a.只有一個條件
#ifdef 識別字 /*若識別字被定義,編譯器會編譯此部分程式*/ #else /*否則編譯此部分程式*/ #endif
或
#if defined(CONDITION_1) /*若識別字被定義,編譯器會編譯此部分程式*/ #elif /*否則編譯此部分程式*/ #endif
/*Example*/ #define CONDITION_1 #ifdef CONDITION_1 /*編譯此部分程式*/ #else /*不編譯此部分程式*/ #endif
#if defined(CONDITION_1) && defined(CONDITION_2) /*若條件達成,編譯器會編譯此部分程式*/ #endif
2.ifndef
#ifndef 識別字 /*若識別字沒有被定義,編譯器會編譯此部分程式*/ #else /*否則編譯此部分程式*/ #endif
3.undef
#undef 識別字 /*取消定義*/
4.#if...#elif...
#if 條件式1 /*若條件式1成立(true),編譯器會編譯此部分程式*/ #elif 條件式2 /*若條件式2成立(true),編譯器會編譯此部分程式*/ #else /*若上述條件皆不成式,則會編譯此部分程式*/ #endif
/*Eaxmple*/ #define CONDITION 1 #if CONDITION == 1 printf("Condition:1"); //會執行此行程式 #elif CONDITION == 2 printf("Condition:2"); #else printf("Condition:other"); #endif
#ifdef #ifndef #elif #else #endif#C語言#C語言關鍵字#關鍵字#Key Word#C語言教學#教學
沒有留言:
張貼留言