预处理指令:
以#开头的行,都预处理指令,用于指示编译器做一些预处理工作。比如#include “XXX.h”
注:预处理指令不是语句,行尾不要加分号
#define的两种用法
1. 定义一个”数值”
2. 定义一个”算式”
注:工程中应该避免使用这两种方式
定义一个值
#define PI 3.14
int main()
{
double r=1.2;
double area=PI * r * r;
return 0;
}
定义带参数的“算式”
#define MAX(a,b) a>b?a:b
int main()
{
int a=MAX(10,12);
return 0;
}
易错点
#define MUL 1+2
int main()
{
int a=4*MUL;
return 0; //准确答案6
}
在程序中应该尽量少用这两种#define
取代的办法:
1. 定义变量或const常量
const double PI=3.14;
2. 定义inline函数(第八章)
inline int max(int a,int b)
{
return a>b?a:b;
}