这些都是c语言的宏定义
#ifdef a
//如果已经定义了a(#define a)
#endif
#ifndef a
//如果没有定义a
#else
#endif
在写程序时为了避免同一个文件被include多次,常使用 #ifndef 进行判断,
#ifndef _HEADFILE_H
#define _HEADFILE_H
// .......语句......
#endif // _HEADFILE_H
#if defined a //判断是否定义了a
#undef a //解除a的定义
#define a 8//重新定义a为8
#endif
#if !defined a
//如果没有定义a,就定义a
#define a
#endif
#ifdef 与 #if defined的区别:
后者支持多个预编译变量的检查
#if (!defined(MAC) && defined(PD))
#endif
只能写一个条件判断:
#ifdef a
#endif