我的 mkstemp() 函数有问题
。 cygwin
上的 GCC 编译器生成警告:
implicit declaration of function ‘mkstemp‘
GCcflags:-std=c99 -Wall
包括:
#include </usr/include/stdlib.h>
#include </usr/include/unistd.h>
最佳答案
在我的 cygwin
stdlib.h
中,有 mkstemp
声明,如下所示:
#ifndef __STRICT_ANSI__
#ifndef _REENT_ONLY
int _EXFUN(mkstemp,(char *));
#endif
看起来mkstemp
不是ANSI C
。确保您没有将编译器设置为强制执行特定标准(放弃 c99
),并且不要使用 -ansi/-pedantic
标志。
另外...放弃 #include
中的 /usr/include/
部分。编译器会为您处理这些事情。
关于c - mkstemp 函数的隐式声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24758058/