小编Seo*_* OH的帖子

-1 的 AND 运算

在代码中实现逻辑运算时,发现一个现象,不应该在if语句中输入。原来这是AND (&&)-1和自然数的运算。

我不知道为什么在下面的相同代码中打印值 1。我直接运行1的补码和2的补码等计算,但没有得出1。

#include <iostream>

using namespace std;

int main()
{
    int a = 10;
    int b = -1;
    
    int c = a && b;
    
    printf("test = %d",c);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ boolean implicit-conversion type-promotion logical-and

1
推荐指数
1
解决办法
105
查看次数