gcc包含完整的出错检查和警告提示功能。采用-pedantic选项,对于不符合ANSI/ISO标准的源代码会产生相应的警告信息。如:gcc -pedantic hello.c -o hello (main函数返回类型为int,且函数体内要有return 语句,一般为 return 0;) -pedantic不能保证被编译的程序与ANSI/ISO C语言标准的完全兼容,只能帮助Linux程序员离这个目标越来越接近,即仅能帮助发现一些不符合该标准的代码,不是全部。
int main(void)
{
return 0;
}
-Wall参数可以使gcc产生更多的警告信息。gcc -Wall hello.c 但最终也会生成可执行二进制文件a.out。
-Werror参数要求gcc将所有的警告信息当成错误进行处理,这在使用自动编译工具(make等)时非常有用,gcc会在产生警告的地方停止编译,迫使程序员对自己的代码进行修改。只有相应的警告消息消除时,才可能将编译过程继续进行下去。gcc -Werror hello.c -o hello
对于Linux程序员,gcc给出的警告信息是很有价值的,不仅可以帮助写出更加健壮、简洁和优美的程序,还是跟踪和调试程序的有力工具,建议始终带上-Wall参数。