warning: incompatible implicit declaration of built-in function 'exit'
Posted on 2008-06-11 11:09 hallo 阅读(21249) 评论(0) 编辑 收藏 举报尝试编译如下代码:
#include <stdio.h> int main(void) { int i = -10; if (i < 0) { exit(1); } return 0; }
编译信息如下:
$ gcc demo.c demo.c: In function ‘main’: demo.c:9: warning: incompatible implicit declaration of built-in function ‘exit’ |
出错的原因是因为没有包含对应的都文件信息。可以尝试使用下面几种方法解决:
添加 #include <stdlib.h> 头文件
》》》★ 示例
#include <stdlib.h> #include <stdio.h> int main(void) { int i = -10; if (i < 0) { exit(1); } return 0; }
编译时使用 [-fno-builtin-exit] 选项关闭警告
》》》★ 示例
$ gcc -fno-builtin-exit demo.c $ |
使用系统定义常量移植性更好
》》》★ 示例
#include <stdio.h> #include <stdlib.h> int main(void) { int i = -10; if (i < 0) { exit(EXIT_SUCCESS); } return 0; }