复合赋值运算符

雏扬 / 2023-08-16 / 原文

复合赋值运算符

该运算符返回运算得数;如果连续使用符合赋值运算符,遵循从右往左计算的原则。

如:

int iValue = 7;
iValue += iValue *= iValue /= iValue - 5;
printf("%d\n", iValue);

根据从右往左的顺序,计算顺序如下:

  1. 计算iValue /= iValue - 5:先得出iValue - 5 = 2,然后计算iValue /= 2。iValue / 2 = 3.5,由于iValue是int类型,所以直接去掉小数部分,得数为3。
  2. 计算iValue *= 3,即3 * 3 = 9,得数为9。
  3. 计算iValue += 9, 即9 + 9 = 18,得数为18。

因此,打印结果为:

18