如何解释下面代码的输出:
include <stdio.h>
int main(void) {
int k;
printf("%d %d\n",k=1,k=3);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我的想法是1将分配给k变量然后1打印.同样3将分配给k和输出3.
预期产出
1 3
Run Code Online (Sandbox Code Playgroud)
实际产出
1 1
Run Code Online (Sandbox Code Playgroud)
我是从外推
int a;
if (a = 3) {
...
}
Run Code Online (Sandbox Code Playgroud)
等于
if (3) {
...
}
Run Code Online (Sandbox Code Playgroud)
请让我知道我哪里错了?