优先级和结合性
C语言中,运算符的运算优先级共分为 15级。1级最高,15级最低。在表达式中,优先级较高的先于优先级较低的进
行运算。 而在一个运算量两侧的运算符优先级相同时,则按运算符的结合性所规定的结合方向处理。 C语言中各运
算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先
左后右。如有表达式x-y+z则y应先与“-”号结合, 执行x-y运算,然后再执行+z的运算。这种自左至右的结合方
向就称为“左结合性”。而自右至左的结合方向称为“右结合性”。 最典型的右结合性运算符是赋值运算符。如 x=y=z,
由于“=”的右结合性,应先执行 y=z再执行x=(y=z)运算。 C语言运算符中有不少为右结合性,应注意区别,以避
免理解错误。