我得到这个错误:
警告:内置函数' malloc '的隐式声明不兼容
我正在尝试做这个:
fileinfo_list* tempList = malloc(sizeof(fileinfo_list));
对于引用,当前使用的结构体是:
typedef struct {
fileinfo** filedata;
size_t nFiles;
size_t size;
size_t fileblock;
} fileinfo_list;
我看不出我所做的有什么错。我刚刚创建了一个tempList
,大小为1 × fileinfo_list
。
您可能忘记了#include <stdlib.h>
您需要#include <stdlib.h>
。否则它被定义为int malloc()
,这与内置类型void *malloc(size_t)
不兼容。
你失踪#include <stdlib.h>
。
stdlib.h文件包含malloc、calloc、realloc和free函数的头信息或原型。
因此,为了在ANSI C中避免此警告,您应该包含stdlib头文件。对于此类警告的唯一解决方案是在程序中包含stdlib.h。