【发布时间】:2017-07-09 08:24:57
【问题描述】:
如何解释以下代码的输出:
include <stdio.h>
int main(void) {
int k;
printf("%d %d\n",k=1,k=3);
return 0;
}
我的想法是1 将被分配给k 变量,然后1 将被打印出来。类似地,3 将分配给 k,输出将是 3。
预期输出
1 3
实际输出
1 1
我在推断
int a;
if (a = 3) {
...
}
等于
if (3) {
...
}
请让我知道我哪里出错了?
【问题讨论】:
-
@CinCout 抱歉,我后来注意到了。
标签: c printf variable-assignment function-calls sequence-points