在C程序中使用malloc
时,我收到一个警告:
warning: incompatible implicit declaration of built-in function 'malloc' [enabled by default]
我可以包含 <malloc.h>
或 <stdlib.h>
来消除 warning
,尽管没有这样做也能正常工作。
因此,我想知道这些头文件之间的区别,当我没有包含任何内容时,gcc
链接哪个头文件?
(我使用 ubuntu 12.04 64位
和 gcc 4.6.3
)
gcc
如何找到malloc
函数? - none<malloc.h>
可以同时存在两种状态:存活(存在的头文件)和弃用(建议不再使用)。 - Basile Starynkevitchposix_memalign
(POSIX)和aligned_alloc
(C11)是唯一标准化的名称。memalign
本身已经“过时且非标准化”。 - ShadowRanger