跟着从my previous question,为什么CShell如此不同于C?为什么在C中左边关联的操作符是正确的关联?
- 4 - 3 + 1 = 2 C.
- 4 - 3 + 1 = 0 CShell。
任何想法?
跟着从my previous question,为什么CShell如此不同于C?为什么在C中左边关联的操作符是正确的关联?
任何想法?
一般来说,传统的记号是在人类论文中从左到右(左关联)。所以人类(其中用这个符号前不久C,csh或计算机甚至没有任何概念):
4 - 3 + 1 = (4 - 3) + 1 = 1 + 1 = 2
为什么?我想最好的答案是因为。这与驾驶左侧或右侧的道路相同。只要每个人都使用相同的东西,哪一方真的不重要。
恕我直言,csh是错误的,因为它是违反直觉的。可能这是一个错误(他们想要左联合,但编码错误),并成为遗留,因为其他事情已经依赖于此。
不同的人写了这些产品,他们对如何处理计算有不同的看法。而且由于C Shell被写为第二,我认为他们没有遵循名义母语的领先地位是错误的。
显然,csh还需要算术运算符之间的空格,根据Csh Programming Considered Harmful(http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/) – bk1e 2009-06-20 14:16:40