同步阅读进度,多语言翻译,过滤屏幕蓝光,评论分享,更多完整功能,更好读书体验,试试 阅读 ‧ 电子书库
6.6 更多赋值运算符:+=、-=、*=、/=和%=
C有多个赋值运算符。最基本的一个当然是=,它简单地把其右边表达式的值赋给其左边的变量。其他赋值运算符对变量进行更新,每个这样的赋值运算符在使用时都是左边为变量名,右边为一个表达式。变量被赋予一个新的值,这个新值是它原来的值根据右边表达式的值进行调整得到的。确切的调整方式要依赖于运算符,例如:
scores += 20 等于 scores = scores + 20 dimes -= 2 等于 dimes = dimes - 2 bunnies *= 2 等于 bunnies = bunnies * 2 time /= 2.73 等于 time = time / 2.73 reduce %= 3 等于 reduce = reduce % 3
前面的列表中,运算符的右边使用了简单的数。但是这些运算符还可以与更复杂的表达式一起工作,例如:
x *= 3 * y + 12 等于 x = x *(3 * y + 12)
我们讨论的这些赋值运算符具有与=同样低的优先级,也就是说低于+或*的优先级。这种低优先级在上一个例子中得到反映,在与x进行相乘之前把12加到了3*y上。
C并不要求您使用这些形式。但是它们更加简洁,与更长的形式相比可能会产生效率更高的机器代码。当您想在一个for循环语句中塞进一些复杂的东西时,这些复合赋值运算符就特别有用了。
请支持我们,让我们可以支付服务器费用。
使用微信支付打赏
