熱度 2
【#if的使用說明】
#if的后面接的是表達式
#if (MAX==10)||(MAX==20) code... #endif
它的作用是:如果(MAX==10)||(MAX==20)成立,那么編譯器就會把其中的#if 與 #endif之間的代碼編譯進去(注意:是編譯進去,不是執 行!!)
【#if defined的使用】
#if后面接的是一個宏。
#if defined (x) ...code... #endif
這個#if defined它不管里面的“x”的邏輯是“真”還是“假”它只管這個程序的前面的宏定義里面有沒有定義“x”這個宏,如果定義了x這個宏,那么,編譯器會編譯中間的…code…否則不直接忽視中間的…code…代碼。
另外 #if defined(x)也可以取反,也就用 #if !defined(x)
【#ifdef與#ifndef的使用】
#ifdef的使用和#if defined()的用法一致
#ifndef又和#if !defined()的用法一致。
最后強調兩點:
第一:這幾個宏定義只是決定代碼塊是否被編譯!
第二:別忘了#endif