首页 > 代码库 > #ifdef、#if defined、#ifndef的使用

#ifdef、#if defined、#ifndef的使用

1.#ifdef和#if defined
    注意两者都有个define的作用,区别在于使用方式上。前者的通常用法是:
#ifdef  X
   ....
#else
   ....
#endif
    只能在两者中选择是否有定义。对于后者,常用法是:

#if defined x1
   ....
#elif defined x2
   ....
#elif defined x3
   ....
#endif
     可以在多个中选择是否有定义。

2.#ifndef的使用方法
    这是 //if not defined的简写,是宏定义的一种,它是可以根据是否已经定义了一个变量来进行分支选择,一般用于调试等等。实际上确切的说这应该是预处理功能中三种(宏定义,文件包含和条件编译)中的一种----条件编译。
#ifndef X
   ....
#else
   ....
#endif

#ifdef、#if defined、#ifndef的使用