关于'C'中的关联性

时间:2010-06-24 17:22:33

标签: c

我如何决定或理解任何陈述或表达是否左右或左右相关性?

3 个答案:

答案 0 :(得分:3)

=,+ =等,其中包含'='的运算符是正确关联的。

所有其他人都是左相关的。

答案 1 :(得分:2)

这是table of C++ operator precedence

C和C ++中的运算符优先级和关联性是相同的(前者中不存在的模运算符)。

答案 2 :(得分:0)

阅读标准

编辑:我自己没有标准,但我发现this link应该基于标准。

另外,引用Kernighan&里奇:

  

算术运算符左侧关联   右。

     

表达式由&&和或||是   从左到右评估,和   一旦真相,评估就会停止   或结果的错误是众所周知的。   大多数C程序都依赖于这些   属性。

     

运营商相关性

     

()[] - > 。从左到右

     

! 〜++ - + - *(类型)sizeof从右到左

     

* /%从左到右

     

+ - 从左到右

     

<< >>从左到右

     

< < => > =从左到右

     

==!=从左到右

     

&安培;从左到右

     

^从左到右

     

|从左到右

     

&安培;&安培;从左到右

     

||从左到右

     

?:从右到左

     

= + = - = * = / =%=& = ^ = | =<< =>> =从右到左

     

,从左到右

     

一元& +, - 和*的优先级高于二进制形式。