以前也听说过宏,但是没有引起重视,现在看到什么宏之类的,感觉很是高深,于是查找资料n久,算是对其一个大致的了解。
宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译。
1. 不带参数
宏定义又称为宏代换、宏替换,简称“宏”。
格式:
其中的标识符就是所谓的
符号常量,也称为“宏名”。
预处理(
预编译)工作也叫做宏展开:将宏名替换为字符串。
掌握"宏"概念的关键是“换”。一切以换为前提、做任何事情之前先要换,
准确理解之前就要“换”。
例:
2.
带参数
除了一般的字符串替换,还要做参数代换。
格式:
area=S(3,2);第一步被换为area=a*b; ,第二步被换为area=3*2;
3.关于#ifdef