【发布时间】:2012-06-07 20:34:58
【问题描述】:
int x = 15 ;
printf ( "\n%d \t %d \t %d", x != 15, x = 20, x < 30 ) ;
代码的输出是 1 20 1 但我认为它应该是 0 20 1 因为 15 == 15...
我遇到了“x != 15”部分的问题
【问题讨论】:
-
应该是 x==20 而不是 x=20。这会导致您的 x 变量从 15 更改,并且实际上使该答案有意义。
-
printf的第三个参数是x = 20,它将x分配给 20。C 不保证评估参数的顺序,因此可以在 @ 之前评估x = 20987654326@.