为什么操作符在CShell中是正确关联的,在C中是左关联的?
从我之前的问题开始 ,为什么CShell与C有如此不同?
- 4 – 3 + 1 = 2 in C.
- CShell中4 – 3 + 1 = 0。
有任何想法吗?
通常,传统的符号在人类论文中从左到右(左联想)。 因此对于人类(在c,csh甚至计算机的任何概念之前很久就使用这种表示法):
4 - 3 + 1 = (4 - 3) + 1 = 1 + 1 = 2
为什么? 我想最好的答案是因为。 这与驾驶左侧或右侧的道路相同。 只要每个人都使用相同的方面,哪一方无关紧要。
恕我直言,csh是错误的,因为它是违反直觉的。 可能这是一个错误(他们想要左联想但编码错误)并成为遗产,因为其他事情已经依赖于此。
不同的人写了产品,他们对如何处理计算有不同的看法。 而且由于C Shell是第二次写的,我认为他们因没有遵循名义母语的引导而有错。