宽容他人,放过自己。

宏的书写

Posted on By anchoriteFili

宏命名规则:纯大写 或者 k+驼峰 例如: MAX 或者 kMax

普通宏

#define PI 3.1415

带参数的宏

#define MUL(A,B) ((A)*(B))

加括号是为了防止受操作符优先级的影响。

条件编译

作用:按不同的条件,编译不同的代码。

条件编译 有三种形式。

  • 第一种形式
#ifdef 标识符

代码段1

#else

代码段2

#endif

如果 标识符 被#define过,编译器编译代码段1,否则编译代码段2.

  • 第二种形式
#ifndef 标识符

代码段1

#else

代码段2

#endif

如果 标识符 未被#define过 编译器编译代码段1,否则编译代码段2.

  • 第三种形式
#if 常量表达式

代码段1

#else

代码段2

#endif

如果 常量表达式结果非0 编译器编译代码段1, 否则编译代码段2.