Answers:
您需要添加:
#include <stdlib.h>
该文件包含内置函数的声明malloc
。如果您不这样做,则编译器会认为您想定义自己的名为的函数,malloc
并会警告您,因为:
int
,与内置函数不兼容)。在中malloc
,它需要a size_t
并返回void*
)。除了其他非常好的答案之外,我还想做一点点总结,并介绍其他答案中尚未讨论的内容。
当您使用Linux时,要malloc()
在您的代码中使用,
您实际上不必 #include <stdlib.h>
。
(尽管的使用stdlib.h
非常普遍,并且可能每个非玩具程序都应以任何一种方式包括它,因为它提供了许多有用的C标准库函数和宏)
您也可以#include <malloc.h>
代替。
但是请注意,malloc.h
不赞成使用,这会使您的代码不可移植。如果您想使用malloc()
,则应始终使用(除非出于明确的原因否则要这样做)#include <stdlib.h>
。
原因为何,最好在回答这个问题的解释: