为什么在C语言的标题中使用"#"符号?为什么不是任何其他符号?

Why is '#' symbol used in C language's header ? Why not any other symbol ?

本文关键字:符号 其他 任何 为什么不 语言 标题 为什么      更新时间:2023-10-16

我想知道为什么C语言的标头包含"#"符号作为起始符号,为什么不使用任何其他符号?这有什么原因吗?或者程序员只是随机选择的?

我猜需求是

  • 可用于当时的常见字符集(ASCII、EBCDIC,也许还有其他字符集)
  • 而不是由该语言使用的,因此预处理器可以很容易地识别其指令
  • 易于在标准美国键盘上打字

符合这些要求的字符不多;CCD_ 1就是其中之一。选择它,而不是@$,可能是任意的。

主要原因是#在C语法的其他地方未使用。这使得它可以用于(然后单独的)预处理器。