小编Azi*_*uth的帖子

K&R 书中指出使用赋值运算符只会计算表达式一次?

我正在阅读《K&R C 编程语言》,第 2.10 章中指出:

“如果 expr1 和 expr2 是表达式,那么

expr1 op= expr2
Run Code Online (Sandbox Code Playgroud)

相当于

expr1 = (expr1) op (expr2)
Run Code Online (Sandbox Code Playgroud)

除了 expr1 仅计算一次。”

op=指的是可以与赋值一起使用的二元运算符+=-=例如 等(并且在第二行中 op 仅表示二元运算符,例如+

我的第一个小困惑是它expr1必须只是一个变量(“左值”)?否则我们如何将结果分配给更大的表达式?expr1但我的主要问题是“仅计算一次”是什么意思?如果我们写:

expr1 = (expr1) op (expr2)
Run Code Online (Sandbox Code Playgroud)

代替

expr1 op= expr2 
Run Code Online (Sandbox Code Playgroud)

c

3
推荐指数
1
解决办法
75
查看次数

标签 统计

c ×1