调试var = var2 == var3

uzr*_*uzr -1 c debugging

我正在调试一个学校校园的程序,目前仍在理解这行代码.

所有变量都是整数.

unfinished = count == 2;
Run Code Online (Sandbox Code Playgroud)

它的输出主要是0,但"=="(比较?)实际上是对值有影响还是完全忽略?

程序语言是C.

sim*_*onc 7

运算符优先级意味着

unfinished = count == 2;
Run Code Online (Sandbox Code Playgroud)

被评估为

unfinished = (count == 2);
Run Code Online (Sandbox Code Playgroud)

这相当于

if (count == 2)
    unfinished = 1;
else
    unfinished = 0;
Run Code Online (Sandbox Code Playgroud)