运算符有优先级。
++ 比 * 优先。
x= ++y * y++;
分解为:
i = ++y;
j = y++;
x = i * j;
前加加,++y,y值在表达式会更新,
后加加,y++; y值在表达式不更新,出了表达式才更新。
y=0;
x=!y - ++y;
否运算 和 前加加 优先。
再做减法。
这种运算式是 C 语言的缺点,能不用最好不用,不明确优先级时最好加括号或分成多个式子运算。避免2义性。