【发布时间】:2013-01-21 22:54:49
【问题描述】:
正如问题所说,出于教育目的,C为什么选择他们选择的运算符进行相应的操作。对于&当然它只是简单地阅读“和”所以这是有道理的。但是,我看不到 & 和地址或 % 和模数或 * 和指针之间的联系。话虽如此,我也看不到指针与键盘上可用的任何真实符号之间的联系。为什么选择这些符号?他们只是任意的吗?谢谢。
【问题讨论】:
-
不幸的是,the source of the definitive answer is no longer with us。其他人的答案必然涉及到某种程度的猜测。
-
我相信
*的指针来自于Digital的PDP系列机器中的汇编器。至于为什么 Digital Equipment Corp 的人会选择它,那当然是你接下来要问的问题了,恐怕我不知道——生产第一台 PDP-11 时我才 8 岁1972 年左右。 -
有趣的问题。最初,Unix(和 C)从Multics OS 中获得了一些灵感——C 和 PL/1(Multics 是在 PL/1 中制作的)有许多相似之处。将 C 关键字(一种面向系统的语言)与 Cobol 关键字(一种面向金融的语言)进行比较也很有趣……
-
这是一个有趣的问题,虽然我们已经不知道最终答案的主要来源,但我敢打赌,他并没有把这个秘密藏在坟墓里. 必须有其他来源。这是一个合法的问题,可以有一个合法的答案。
-
很多 C 语法都继承自其前身:B 和 BCPL 语言,如 Dennis Ritchie 在此处cm.bell-labs.com/who/dmr/chist.html 所述。例如,用于指针解引用的
*以及*(A + i)数组访问语义从B 来到C。现在,为什么在B 中选择这些符号...
标签: c++ c pointers reference operators