宏是什么
计算机科学里的宏是一种抽象(Abstraction),
它根据一系列预定义的规则替换一定的文本模式。
解释器或编译器在遇到宏时会自动进行这一模式替换。
对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。
绝大多数情况下,“宏”这个词的使用暗示着将小命令或动作转化为一系列指令。
个人理解,
大体就是用简单标识预设一些操作,在程序真正执行前将执行操作带人。
有时候又叫宏语言,有自己的语法:表现上宏变量和宏函数。
在c语言中,用define定义宏,可以达到常规语法的常量和方法的效果。
为什么不直接叫常量和方法,
个人觉得是宏本身是单独的一个概念,然后引进到C语言中,虽然和C语言语法结构有类似,但有其独立存在概念。
宏函数参数是类型无关的,并且预编译器不做语法检查,容易出错,
优点:直接被替换效率高,不用反复调用像普通方法。
原文:https://www.cnblogs.com/straybirds/p/14790978.html