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參數。