mkstemp隐式声明函数

时间:2014-07-15 12:19:05

标签: c cygwin mkstemp

我对函数mkstemp()有疑问。 cygwin上的GCC编译器生成警告:

implicit declaration of function ‘mkstemp‘

GCC标志:-std=c99 -Wall

包括:

#include </usr/include/stdlib.h>
#include </usr/include/unistd.h>

1 个答案:

答案 0 :(得分:0)

在我的cygwin stdlib.h mkstemp声明如此保护:

#ifndef __STRICT_ANSI__
#ifndef _REENT_ONLY
int _EXFUN(mkstemp,(char *));
#endif

似乎mkstemp不是ANSI C。确保您没有将编译器设置为强制执行特定标准(抛弃c99)并且不使用-ansi/-pedantic标记。

同样......放弃/usr/include/中的#include部分。编译器会为您解决这个问题。