c提供的預處理命令有3種:
(1)巨集定義
(2)檔案包含
(3)條件編譯
預處理命令不是c語句,為了與一般的c語句相區別,這些命令都是以 「#」 開頭的。
c原始檔經過預處理之後,不再含有任何預處理命令。
單個.c原始檔轉換為可執行檔案需要經過4個步驟:
(1)預處理
(2)編譯
(3)彙編
(4)鏈結
多個.c原始檔轉換為可執行檔案的過程與單個.c原始檔轉換為可執行檔案的過程稍有不同:
(1)分別對每個.c原始檔進行預處理,編譯,彙編。
(2)對彙編後得到的所有檔案進行鏈結。
在標頭檔案中盡量不要包含函式定義和變數定義
標頭檔案中通常包含的內容有:
(1)各種公用的巨集定義
(2)函式宣告
(3)結構體,共用體,列舉體的型別定義(不是變數定義)
(4)全域性變數的 extern 宣告
(5)條件編譯
(6)typedef
編譯和預處理相關知識點
本質 翻譯官,把高階語言翻譯成機器指令 常用選項 gcc o 輸出檔名 輸入檔名 gcc o build 01.c 字尾不能為其他 gcc v o build 01.c gcc l o 用來指定程式要鏈結的庫,l引數緊接著就是庫名 gcc l o l引數跟著的是庫檔案所在的目錄名 gcc e ogc...
預處理命令知識點
ansi c標準規定,可以在c源程式中加入一些 預處理命令 以改進程式設計環節,提高程式設計效率。這些預處理命令是由ansi c統一規定的,但是它不是c語言本身的組成部分,不能直接對它們進行編譯 因為編譯程式不能識別它們 必須在對程式進行通常的編譯之前 先對程式中這些特殊的命令進行 預處理 即根據預...
c 相關知識點
類繼承 基類指標與引用可以隱示的指向派生類的物件,但只能使用基類的函式。多型屬於豎向函式過載,派生類函式的名與基類函式得名一樣,但在呼叫多態函式時有些區別,如果該函式是通過引用或者指標而不是物件呼叫的,如果這個函式在多型過程中沒有使用關鍵字virtual那麼程式將根據引用或者指標選擇實現方法。如果函...