在编译一个程序时,可以条件编译来实现代码在某种条件下编译或忽略,这样会程序的维护性修改。
使用条件编译,可以选择代码的一部分是被正常编译还是完全忽略。支持条件编译的语句是 #if 指令和与其匹配的 #endif 指令。语法形式如下:
#if constant-expression
statements
#endif
预编译器会对constant-expression(常量表达式)进行求值,如果它为 1(真),那么statements就会被正常编译,否则statements不会被编译。
所谓constant-expression(常量表达式)就是它的值,或者由 #define 定义的符号。如果变量在执行期之前无法获得他们的值,那么该变量出现在常量表达式中就是非法的,因为它们的值是无法预测的。
#define DEBUG 1
#if DEBUG