这是我的程序:
int main(void)
{
int i, j, k, m;
i=-3, j=2, k=0;
m = k++ && ++i && ++j;
printf("%d, %d, %d, %d\n", i, j, k, m);
return 0;
}
上面程序的输出是:
-3 2 1 0
但根据运算符优先级表,我猜 ++ 应该首先评估。我也尝试在它们周围加上括号,但输出仍然保持不变。我在某处读到,无论如何,加上括号会使它首先评估。
有人,请说清楚,它是如何评估的。提前致谢。