1 代码中 #ifdef注释方法的使用
- #ifdef的使用
#ifdef _XXXX
...程序段1...
#else
...程序段2...
#endif
如果标识符_XXXX
已经被#define
定义,则编译程序段1,否则编译程序段2.#else
非必须,可不存在程序段2.
2. #ifndef
#ifndef _XXXX
...程序段1...
#else
...程序段2...
#endif
与#ifdef
相反,即#if not define
.如果标识符_XXXX
没有被#define
定义,则编译程序段1,否则编译程序段2,同样#else
非必须,可不存在程序段2.
- #if 常量
#if 常量
...程序段1...
#else
...程序段2...
#endif
常量为真(非0),就编译程序段1,否则编译程序段2。注意这里是编译阶段,所以使用0,1这样的常量更合适,使用#if 0
和#endif
的结合可以用来注释代码,比/* …程序段…/
注释更方便,可不受代码段中的局限.在字符串全局匹配时难免会用到匹配字符.
- 注释用法
#if 0
...程序段...
#endif
上面方法就实现了对程序段的注释屏蔽,解除屏蔽只需要将#if 0改为# if 1即可.