我在编译代码时收到此错误,并且在尝试了一个小时后完全不知道。
这是导致错误 os_memory_strategies.h 的文件:
#ifndef _OS_MEMORY_STRATEGIES_H
#define _OS_MEMORY_STRATEGIES_H
#include "os_mem_drivers.h"
#include "os_memheap_drivers.h"
#include "os_process.h"
#include "defines.h"
#include <stdint.h>
MemAddr os_Memory_FirstFit (Heap *heap, uint16_t size);
#endif
线
MemAddr os_Memory_FirstFit (Heap *heap, uint16_t size);
导致错误。据我了解,“堆”在这一点上是未知的。struct Heap 在 os_memheap_drivers.h 中定义,包含在这里。该结构如下所示:
typedef struct Heap{
prog_char *const name;
MemDriver *const driver;
AllocStrategy allocStrat;
Memory const memory;
}Heap;
使用 AVRStudio,所有文件都在同一个目录中。