gpt4 book ai didi

c - 表达式 c = a>2+b!=6 的输出是什么?

转载 作者:行者123 更新时间:2023-12-04 00:19:10 25 4
gpt4 key购买 nike

最近我遇到了这个程序。

#include <stdio.h>

int main() {
int a = 10, b = 20, c;
c = a > 2 + b != 6;
printf("%d", c);
}

输出1背后的逻辑是什么?

最佳答案

这取决于 precedence of the operators .

+ 的优先级高于 >> 的优先级高于 !=

a > 2 + b != 6

被评估为:

((a > (2 + b)) != 6)

或更具体:

((10 > (2 + 20)) != 6)

其中 (10 > (20 + 2)) 被评估为 0,因为 10 不大于 22

所以表达式展开为:

(0 != 6)

计算结果为 1 因为 0 不等于 6 -> (0 != 6) == 1.

关于c - 表达式 c = a>2+b!=6 的输出是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61989122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com