计算机中,宏(macro,也叫「巨集」)的概念很常见,出现在 Excel 和 Word 等办公软件当中,C 语言(#define)、Lisp 语言等编程语言中也有宏,键盘似乎也有宏的概念。这个词即使是在英语中(macro)也显得抽象和模糊,宏到底是什么意思?

简单来说,宏是将短小的命令展开为一系列命令的过程,一般是为解释器、编译器设定的一系列与处理规则,用于进行模式替换。宏的概念也被拓展到了编辑器和键盘映射当中,所以有了键盘宏和 Excel 中的宏。

最常见的宏用于「文本替换」,如 C 语言的宏。

#define N 100

在编译器的预处理阶段,源代码中的 N 就会被替换(或者说展开)为 100。对于 Lisp 语言和其他更强大的宏编程语言,宏展开还能被应用在代码上。宏展开也不总是死板的文本替换,也往往是模式替换,一些笔记软件和效率工具提供的代码段(Snippets)功能也类似于宏。

另一种宏可被视为「快捷指令」,Excel 中录制宏用于之后快速执行某个操作的用法,就属于这种。将一个小的指令自动展开为一系列指令。

总而言之,宏被用于自动化、简化和复用操作。