我有以下代码从命令行读取参数。如果字符串是1个字符,并且我想用它作为出口值。编译器在第二行给出警告(数组下标具有类型'char')。此错误来自“& &”之后的第二部分。数组下标有'char'类型
if (args[1] != NULL) {
if ((strlen(args[1]) == 1) && isdigit(*args[1]))
exit(((int) args[1][0]));
else
exit(0);
}
}
此外,当我使用不同的编译器时,我在下一行(退出)得到两个错误。
builtin.c: In function 'builtin_command':
builtin.c:55: warning: implicit declaration of function 'exit'
builtin.c:55: warning: incompatible implicit declaration of built-in function 'exit'
伟大的,这照顾了“数组下标具有类型'char'”警告,但我仍然得到隐式声明退出。我的标题中已包含#include。 –
user994165
2012-04-17 07:03:18
如果'exit()'没有在''中声明,那么正在使用的''标题被破坏。你确定你没有一个名为''的空文件出现在某个意想不到的地方吗?使用'gcc -H'来查看包含哪些标题。 –
2012-04-17 07:05:05
不知道发生了什么,但现在正在工作。谢谢 – user994165 2012-04-17 07:40:01