c – Cygwin gcc编译在IDE中失败,抱怨’退出’未声明

当我使用just编译程序时

gcc code.c

没有消息,并且成功生成了输出文件.输出的文件有效.但是,当我尝试在IDE中使用相同的cygwin安装的gcc编译器时(我尝试过Netbeans和Dev-C),我收到以下错误

main.cpp:27: error: `exit' undeclared (first use this function)
main.cpp:27: error: (Each undeclared identifier is reported only once for each function it appears in.)
main.cpp:77: error: `write' undeclared (first use this function)
main.cpp:78: error: `close' undeclared (first use this function)

我看不出有什么不同.为什么不编译?

好的,问题是在IDE中,文件的扩展名为.cpp,而当我从终端编译时,它的扩展名为.c.所以,我的新问题是为什么它被视为c文件时不能编译. C不是C的子集吗?

解决方法:

C比C更严格.C允许你在没有原型的情况下调用函数,C不允许这样做.

要解决此问题,您需要添加:

#include <stdlib.h>

此外,在命令行编译时.确保使用-Wall标志,以便获得重要警告:

gcc -Wall code.c
上一篇:gcc -O会对链接静态库生效吗?


下一篇:java – 使用maven3进行加速开发