![](https://i-blog.csdnimg.cn/blog_migrate/118d245ac2684f4bd47e127007b4803c.png)
#define 叫做宏定义命令,它也是C语言预处理命令的一种。所谓宏定义,就是用一个标识符来表示一个字符串,如果在后面的代码中出现了该标识符,那么就全部替换成指定的字符串。
我们先通过一个例子来看一下 #define 的用法:
#include<stdio.h>
#define N 100
intmain(){
int sum =20+ N;
printf("%d\n", sum);
return0;
}
运行结果:
120
注意第 6 行代码int sum = 20 + N,N被100代替了。
#define N 100就是宏定义,N为宏名,100是宏的内容(宏所表示的字符串)。在预处理阶段,对程序中所有出现的“宏名”,预处理器都会用宏定义中的字符串去代换,这称为“宏替换”或“宏展开”。
宏定义是由源程序中的宏定义命令#define完成的,宏替换是由预处理程序完成的。
宏定义的一般形式为:
#define 宏名 字符串