rwa*_*ace 5 c syntax programming-languages operators associativity
大多数编程语言都有二元运算符的优先级和关联性表.在某些情况下,相关性很重要,例如(a - b) - c!= a - (b - c).
但是,对于像&&它似乎无关紧要的关联运算符,但大多数语言将其列为左关联.
有没有(a && b) && c和a && (b && c)?之间存在差异的情况?
我不敢相信有这么多错误(删除)的答案......也许我应该回答这个问题.
首先,优先级!=关联性!=评估顺序.
现在我们已经解决了这个问题:在某些情况下,关联性很重要.
因为a + b + c,当a和b,并且c是浮点数而不是整数时,它很重要,因为舍入误差将根据术语的分组方式而不同地累积.
对于特定的情况下&&和||,没关系,只要他们不超载(这是可能只在C++,不C),但语言还是定义了一个只为一致性-这样的"树"代码的表示(基于语法)是唯一的.这也工程以C++的好处,因为重载现在的意义&&和||一点也不含糊.