無(wú)標(biāo)題文章

條件編譯

1、#if, #elif, #else, #endif
#if 條件 1
 代碼段 1
#elif 條件 2
 代碼段 2
...
#elif 條件 n
 代碼段 n
#else
 代碼段 n+1
#endif
2、#ifdef, #else, #endif或#ifndef, #else, #endif
  條件編譯的另一種方法是用#ifdef與#ifndef命令,它們分別表示“如果有定義”及“如果無(wú)定義”。有定義是指在編譯此段代碼時(shí)是否有某個(gè)宏通過(guò) #define 指令定義的宏,#ifndef指令指找不到通過(guò)#define定義的某宏,該宏可以是在當(dāng)前文件此條指令的關(guān)面定義的,也可以是在其它文件中,但在此指令之前包含到該文件中的。
#ifdef的一般形式是:
#ifdef macro_name
    代碼段 1
#else
    代碼段 2
#endif

#ifdef的一般形式是:

#ifndef macro_name
    代碼段 2
#else
    代碼段 1
#endif
3、通過(guò)宏函數(shù)defined(macro_name)
  參數(shù)為宏名(無(wú)需加""),如果該macro_name定義過(guò)則返回真,否則返回假,用該函數(shù)則可以寫(xiě)比較復(fù)雜的條件編譯指令如
 #if defined(macro1) || (!defined(macro2) && defined(macro3))
...
#else
...
#endif

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容