本篇主要介绍一下#if#endif语句的简单用法。
简单来说,这个语句实现的是选择性执行的功能,相当于把一部分代码屏蔽掉或者只执行某段代码,但是又比直接用 // 屏蔽更加方便,比用/* */屏蔽更加安全,因为如果使用多个/* */会导致配对出错,从而导致程序结果出错。使用该功能进行程序的功能功能测试很方便,只需要将 #if 后的数值改为01就可以在执行和不执行间进行切换,非常方便快捷。
分两种情况:
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卜未之