运算符的 C++ 优先级

c++ presedence of operators

本文关键字:优先级 C++ 运算符      更新时间:2023-10-16

大家好,所以我需要一些帮助来理解这些复合赋值运算符的工作原理,例如

int x=6;
x += x -= x * x;

x 原来是 -60 有人可以解释为什么以及如何工作吗?

忽略带有序列点的 UB:

x += x -= x * x;

(x += (x -= (x * x)));

所以

x * x -> 36

x -= 36 -> x = -30

x += -30 -> x = -60