條件編譯

條件編譯

計算機編程術語
一般情況下,源程序中所有的行都參加編譯。但有時希望對其中一部分内容隻在滿足一定條件下才進行編譯,即對一部分内容指定編譯條件,這就是“條件編譯”(conditional compile)。條件編譯指令将決定哪些代碼被編譯,而哪些是不被編譯的。可根據表達式的值或某個特定宏是否被定義來确定編譯條件。
    中文名:條件編譯 外文名:conditional compile 性質:計算機 類别:編程

基本内容

條件編譯語句排版時,需考慮以下三種位置:

(1)條件編譯語句塊與函數定義體之間不存在相互嵌套(主要在(.h)文件中)

條件編譯關鍵字語句頂格左對齊;所含的#include語句(塊)#define語句(塊)甚至是被嵌套下級條件編譯語句塊,按照語句塊嵌套的排版方式進行縮進排版。

(2)條件編譯語句塊嵌套在函數體之外(主要在(.c)文件中)

這種情況下,條件編譯語句塊不影響函數體條件編譯關鍵字語句頂格左對齊;所含的函數體定義無需縮進,依舊按照單個函數體定義的排版方式進行。

(3)條件編譯語句嵌套在函數體内(主要在(.c)文件中)

a)當條件編譯語句塊與被包語句所屬的語句塊之間沒有邏輯路徑交叉時,以下兩種方式均可按照語句塊嵌套方式進行縮進排版(推薦);條件編譯語句不影響原先語句塊排版,條件編譯語句與所包含的關鍵字語句塊左對齊。

b)當條件編譯語句塊與被包語句所屬的語句塊之間存在邏輯路徑交叉時。條件編譯語句頂格左對齊,其它語句按照正常順序排版。

背景

條件編譯是指預處理器根據條件編譯指令,有條件地選擇源程序代碼中的一部分代碼作為輸出,送給編譯器進行編譯。主要是為了有選擇性地執行相應操作,防止宏替換内容(如文件等)的重複包含。

上一篇:社會誠信

下一篇:鐵絲網圍欄

相關詞條

相關搜索

其它詞條