diff options
| author | Eltrac <hi@guhub.cn> | 2025-04-21 14:39:11 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-04-21 14:39:11 +0800 |
| commit | 340635c8b6274c828b4a2315b8b3ccac7978a15a (patch) | |
| tree | 48b96c4b27bafaa4b455f8badfe02ddd1f3cad6f /content | |
| parent | 864b69ddc597582289a5eaf2d72a5b395e46791d (diff) | |
docs: new card
Diffstat (limited to 'content')
| -rw-r--r-- | content/cards/宏.md | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/content/cards/宏.md b/content/cards/宏.md new file mode 100644 index 00000000..c6a9897d --- /dev/null +++ b/content/cards/宏.md @@ -0,0 +1,22 @@ +--- +title: 宏 +tags: + - 计算机 +date: 2025-04-21T14:38:00 +--- + +计算机中,宏(macro,也叫「巨集」)的概念很常见,出现在 Excel 和 Word 等办公软件当中,C 语言(`#define`)、Lisp 语言等编程语言中也有宏,键盘似乎也有宏的概念。这个词即使是在英语中(macro)也显得抽象和模糊,宏到底是什么意思? + +简单来说,宏是**将短小的命令展开为一系列命令的过程**,一般是为解释器、编译器设定的一系列与处理规则,用于进行**模式替换**。宏的概念也被拓展到了编辑器和键盘映射当中,所以有了键盘宏和 Excel 中的宏。 + +最常见的宏用于「文本替换」,如 C 语言的宏。 + +```c +#define N 100 +``` + +在编译器的预处理阶段,源代码中的 `N` 就会被替换(或者说展开)为 `100`。对于 Lisp 语言和其他更强大的宏编程语言,宏展开还能被应用在代码上。宏展开也不总是死板的文本替换,也往往是模式替换,一些笔记软件和效率工具提供的代码段(Snippets)功能也类似于宏。 + +另一种宏可被视为「快捷指令」,Excel 中录制宏用于之后快速执行某个操作的用法,就属于这种。将一个小的指令自动展开为一系列指令。 + +总而言之,宏被用于自动化、简化和复用操作。
\ No newline at end of file |
