C & C++ FAQ
|
C | C++ | 演算子の結合性とは何ですか。 |
とみなされるのが左結合の演算子であり、(a○b) ○ c 左結合
とみなされるのが右結合の演算子です。すなわち、同じ優先度の演算子が並んでいるときに、左右どちらの演算が結び付けられるのかを示すのが結合性です。a ○ (b○c) 右結合
です。もしも、右結合だったら、5 - (3 - 1)と解釈され、答えも違うものとなってしまいます。代入を行う単純代入演算子=は右結合ですから、次のようになります。5 - 3 - 1 → (5 - 3) - 1 /* 左結合 */
a = b = 1 → a = (b = 1) /* 右結合 */