C C 複習之 條件編譯

2021-09-19 13:53:25 字數 546 閱讀 4494

條件編譯功能對於程式的移植和裁剪時很有用的,檢視過μcosⅱ作業系統的核心源**,裡面大量使用了條件編譯,方便使用者根據自個的需要,對系統核心進行裁剪。

條件編譯的3種形式:

(1)

#ifdef  識別符號

程式段1

#else

程式段2

#endif

作用:如果指定的識別符號已經被#define命令定義,則編譯程式段1,否則編譯程式段2。 

(2)

#ifndef  識別符號

程式段1

#else

程式段2

#endif

作用:如果指定的識別符號沒有被#define命令定義,則編譯程式段1,否則編譯程式段2。  

(3)

#if  常量表示式

程式段1

#else

程式段2

#endif

作用:如果常量表示式的值非0,則編譯**段1,否則編譯**段2.

C C 條件編譯

出處 有些程式在除錯 相容性 平台移植等情況下可能想要通過簡單地設定一些引數就生成乙個不同的軟體,這當然可以通過變數設定,把所有可能用到的 都寫進去,在初始化時配置,但在不同的情況下可能只用到一部分 就沒必要把所有的 都寫進去,就可以用條件編譯,通過預編譯指令設定編譯條件,在不同的需要時編譯不同的 ...

C C 條件編譯

04 巨集定義 05 總結 條件編譯是指預處理器根據條件編譯指令,有條件地選擇源程式 中的一部分 作為輸出,送給編譯器進行編譯。主要是為了有選擇性地執行相應操作,防止巨集替換內容 如檔案等 的重複包含。常見的條件編譯指令如下 條件編譯指令 描述 description if如果條件為真,則執行相應操...

C C 條件編譯

條件編譯就是指有條件的編譯,即根據條件去編譯 在編譯階段時就對 做出取捨,有的編譯,有的不編譯,這樣比寫成乙個個判斷函式更有效率,比如工程 大部分的地方都類似,只有個別語句因為使用的硬體版本不同,就可以使用條件編譯增加可移植性。條件編譯的 條件 可以是乙個表示式的值,也可以是乙個定義的巨集。對於前者...