#ifdef NAME
程序段1;
#else
程序段2;
#endif
看程序是否对宏NAME进行定义,若定义了则编译程序段1,反之编译程序段2。
-------------------------------------------------------------------------------------------------------
也可以利用宏的值是否为真来进行条件编译
#ifdef 1
程序段1
#else
程序段2
#endif
上述1也可换为宏的名,然后进行宏的定义为1或0。
----------------------------------------------------------------------------------------------------------
上述宏可以不在代码中定义,可以在gcc编译时定义
gcc ifdef.c -D NAME
就会执行程序段1。