例如:
#ifdef DEBUG
printf("Debug mode\n");//如果定义了DEBUG,则打印该行
#else
printf("Release mode\n");//否则打印该行
#endif
//使用例子
#include <stdio.h>
#define DEBUG // 定义宏 DEBUG
int main() {
#ifdef DEBUG
printf("Debugging is enabled.\n");
#endif
return 0;
}
灵活性:可以根据不同的条件(如操作系统、编译器、编译选项等)来控制代码的编译,使得同一份代码可以在不同的环境下生成不同的执行文件。
优化编译时间:通过条件编译,你可以避免编译不必要的代码,减少编译的时间,尤其是在大型项目中。在不同的构建配置下,只编译必要的模块或功能。
运行时效率:由于条件编译是在编译时根据宏定义的不同进行的,因此它不会在程序的运行时产生任何额外的性能开销。#ifdef 只是帮助编译器选择性地包括或排除某些代码