警告和錯誤選項:
g++ -wall -w atest.cpp
g++ -w welcome.cpp 讓編譯器不報告任何警告
也可以開啟特定警告。乙個好的選項是-wreturn-type,讓編譯器警告函式宣告返回值但沒有包括return語句。-wcomment表示開始開始說明符在另乙個c語言形式的說明內。
-werror選項使警告變成錯誤,不生成完成的可執行**檔案,但仍然在訊息中顯示「warning」字樣
可移植性選項:
-wtraditional選項對非傳統結構或ansi c++和ansi c中不允許的結構發出警告。如果要讓編譯器把所有非傳統結構當作錯誤,則指定 -traditional 而不帶大寫w,如果程式用這個命令進行編譯,則通常能在其他ansi c++系統上編譯。
-pedantic 在程式使用gnu特定特性時會發出警告。利用這個警告,程式使用其他編譯器可能不認識的gnu特性時會發出警告
-ansi 這時編譯器只接受ansi定義的結構
中間編譯:
-e 預處理之後停止,不編譯
-s 編譯之後停止,不彙編
-c 彙編之後停止,不鏈結
要檢查編譯過程中間階段發出的所有命令,用-v選項可以顯示每個中間編譯器命令,還可以顯示預處理、編譯、彙編、鏈結期間發生的所有檔案引用。如果只要檢查編譯器的命令,合併-v和-fsyntax-only選項,檢查程式源**的語法。-fsyntax-only選項也可以單獨瀏覽編譯器產生的警告和錯誤資訊,由於不產生實際輸出,用這個命令編譯時速度更快。
在linux下編譯遇到 GNUC
在linux下編譯遇到 gnuc prereq編譯錯誤的解決方法 使用linux編譯除錯,今天嘗試編譯發現如下錯誤 error missing binary operator before token begin decls does not name a type 第乙個錯誤位置為系統的strin...
GNU C函式統計
我是根據gnu c文件的附錄b來統計的 file usr share doc glibc doc html libc 36.html 統計結果如下 1 iso amend1 1 sun 1 sunos 1 unknown 1 vtimes.h 1 xopen 1 xpg4 2 bsd svid 2 ...
GNU C 的復合語句
gnu c把包含在括號中的復合語句看作是乙個表示式。這樣就允許你在表示式中使用迴圈 switch語句以及區域性變數。讓我們回憶一下,復合語句是用大括號括起來的一組表示式,在這種構造之下,大括號外面要有一對圓括號。例如 就是乙個合法的求foo 的絕對值的表示式 雖然比必要的複雜一點 復合語句的最後必須...