<pre name="code" class="plain">#if defined 宏1
code;
#else defined 宏2
code;
#endif
注意当#if defined 中的 defined 写错时,编译器并不报错。
#if defined 可以有多种变化,能够应用多种表达式。
#include <stdio.h>
//#define TYPE_1
//#define TYPE_2
#define TYPE_3
//#define TYPE_4
int main()
{
int a;
a = 2;
switch(a)
{
case 4:
printf("4, \n");
break;
case 1:
printf("1, \n");
break;
case 2:
printf("2, \n");
break;
}
#if defined TYPE_1 || defined TYPE_2
printf("defined TYPE_1 or TYPE_2\n");
#endif
#if defined TYPE_3 && !defined TYPE_4
printf("defined TYPE_3 and ! TYPE_4\n");
#endif
return 0;
}