2

I saw the following code: a += b += c - please, does anyone know what does it mean?

a = a + b
b = b + c

or:

b = b + c
a = a + b
4

3 に答える 3

6

+=演算子の結合性に依存します。通常は右から左なので、2番目の答えです: 。のa+=b後に評価されb+=cます。

于 2012-10-24T21:16:57.857 に答える
2

次のようにのみ評価できます。

a += (b += c)

このように評価される場合:

(a += b) += c

次に、数値に評価さa += bれ、変数ではなく数値を変更しようとしますが、これは不可能です。

于 2012-10-24T21:22:00.410 に答える
0

ほとんどの高級言語では、このような式+=は右から左に結合しているため、左から右に評価されます。この場合、の値がの値にc加算されb、次にb(による加算後のc)の値がに加算されaます。

これは、2番目のブロックに相当します。

于 2012-10-24T21:17:56.677 に答える