第一種形式:
解釋:如果識別符號被#define語句定義過,則編譯程式段1 否則編譯程式段2
#incelud第二種形式:#define num ok
int main(){
#ifdef num
printf("hello world");
#else
printf("hello china");
#endif
return o;
因為已經定義了巨集 num 為ok,所以只列印第一句 「helloworld」
解釋:如果識別符號未被#define語句定義過,則編譯程式段1 否則編譯程式段2(與第一種形式相反)
第三種形式:
C語言 09條件編譯
條件編譯的概念 通常我們希望程式的其中一部分 只有在滿足一定的情況下才進行編譯,否則不參與編譯,只有參與編譯的 最終才能被執行 這就是條件編譯 基本用法 if condication01 code01.elif condication02 code02.else code03.endif 1 inc...
14 條件編譯
巨集操作符包括 和 這兩個操作符都是對巨集不代表數字的引數進行 處理的 操作符可以把乙個引數轉換成字串字面值 在引數前後各加乙個 操作符可以把乙個代表識別符號的引數和其他內容 合併得到乙個新識別符號 條件編譯可以在編譯的時候決定哪些語句需要編譯 哪些語句不需要編譯 條件編譯是使用預處理指令實現的 i...
5 4 條件編譯
1 ifndef 含義是 if not define,如果沒有定義 2 ifdef 含義是 if define,如果已經定義 3 if 配合函式 defined 使用,if defined macro ifdef macro,如果已經定義了巨集 macro 三者均要以 endif 進行結尾。標頭檔案...