define 编译预处理指令
定义格式:#define <名字> <值>
例如:
#define love 520
printf("%d",love);
使用love时不需要再定义以及赋值,输出打印为 520
其他小知识点
1、宏定义必须写在函数之外,其作用域为宏定义命令起到源程序结束。如要终止其作用域可使用#undef
命令。
2、如果一个宏的值超过一行,最后一行之前的行末需要加 \
例如:
#define exchange(a,b) { \
int t;\
t=a;\
a=b;\
b=t;\
}
3、宏可以定义带参数的函数
例如:
#define SQ(x) (x)*(x)
printf("\40:The square for this number is %d \n",SQ(num));
输入 num=40
打印 1600
4、 可用宏定义表示数据类型,使书写方便。
#define UINT unsigned int
//在程序中可用 UINT 作变量说明:
UINT a, b;
小提示:define只是简单的字符串替换,而非typedef,typedef是生成新的数据类型。
5、宏可以使用宏。
#define PI 3.14
#define print {\
printf("%f",PI);\
}