#if defined和#if !defined(c语言的宏定义)
我们要检查a是否定义
#if defined a
#undef a
#define a 200
#endif
上述语句检验a是否被定义,如果被定义,则用#undef语句解除定义,并重新定义a为200
#ifndef a //如果a没有被定义
#define a 100
#endif
#undef为解除定义
#ifndef是if not defined的缩写,即如果没有定义
作用
1 条件编译
#if !defined XXX_XXX
#define XXX_XXX
#endif
2 错误信息
#if !defined(__cplusplus)
#error C++ compiler required.
#endif