本篇主要介绍一下#if和#endif语句的简单用法。
简单来说,这个语句实现的是选择性执行的功能,相当于把一部分代码屏蔽掉或者只执行某段代码,但是又比直接用 // 屏蔽更加方便,比用/* */屏蔽更加安全,因为如果使用多个/* */会导致配对出错,从而导致程序结果出错。使用该功能进行程序的功能功能测试很方便,只需要将 #if 后的数值改为0或1就可以在执行和不执行间进行切换,非常方便快捷。
分两种情况:
1)#if true和#endif搭配
代表执行两者之间的代码
2)#if false和#endif搭配
代表中间代码被屏蔽掉
//#if true则执行 #if 1 xx xx xx //xx代表中间的代码段 #endif
//#if false则不执行,相当于/* */的注释作用 #if 0 xx xx xx //xx代表中间的代码段 #endif
下面看一下代码实际运行例子:
#include<stdio.h> int main(void) { #if 0 printf("I am in #if 0\n"); #endif #if 1 printf("I am in #if 1\n"); #endif printf("I am in else\n"); return 0; }
以下是运行结果:
I am in #if 1 I am in else
2019.9.10卜未之