概述
ifdef … #else …#endif
条件编译指令。
其语法形式如下:
#ifdef 常量表达式
代码段1
#else
代码段2
#endif
其中常量表达式可以仅仅为一个编译标志。
如果常量表达式的值为真(非零值),编译代码段1部分的代码,否则编译代码段2部分的代码。
当常量表达式为简单的编译标志时,如果此编译标志在前面的代码中,已经使用#define指令定义过,且在当前的代码段中有效,则编译代码段1部分的代码,否则编译代码段2部分的代码。
例:
#define CONST_TRUE 1
#define TAG_TRUE
void main()
{
#ifdef CONST_TRUE
printf("The CONST_TRUE is truen");
#else
printf("The CONST_TRUE is falsen");
#endif
#ifdef TAG_TRUE
printf("The TAG_TRUE is definedn");
#else
printf("The TAG_TRUE is not definedn");
#endif
}
程序的运行结果如下
The CONST_TRUE is true
The TAG_TRUE is defined
因为CONST_TRUE代表1,所以系统编译printf("The CONST_TRUE is truen")部分代码,因此程序运行输出“The CONST_TRUE is true”的结果。如果CONST_TRUE代表0,则系统编译printf("The CONST_TRUE is falsen")部分代码。由于TAG_TRUE已经定义,所系统编译printf("The TAG_TRUE is definedn")部分代码。
最后
以上就是怕黑镜子为你收集整理的ifdef … #else …#endif .的全部内容,希望文章能够帮你解决ifdef … #else …#endif .所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复