gpt4 book ai didi

c - if 运算中的 OR 运算

转载 作者:行者123 更新时间:2023-11-30 16:09:16 27 4
gpt4 key购买 nike

我是原生 C 语言的新手,但我没有看到错误。

我尝试在这种情况下使用 if 操作:

#define PAGE_A 0 
#define PAGE_B 1

int pageID = 0;


if (pageID != PAGE_A || pageID != PAGE_B) {

//Do something
}

但是它不起作用。如果页面 ID = 0 或 1,它将执行“做某事”。如果我只是写:

if (pageID != PAGE_A) {

//Do something
}

它有效。如果 pageID = 1-x 它会去“做某事”,否则它不会......

最佳答案

如果任一操作数为 true,则逻辑 OR 运算符 || 的计算结果为 true。

如果 pageID 为 0,则第一个条件为 false,但第二个条件为 true,因此整个表达式的计算结果为 true。同样,如果 pageID 为 1,则第一个条件为 true,但第二个条件为 false,因此整个表达式的计算结果为 true。如果 pageID 是任何其他值,但条件为 true,则整个表达式为 true。

您需要的是逻辑 AND 运算符 &&,仅当两个操作数的计算结果均为 true 时,该运算符才为 true。

if (pageID != PAGE_A && pageID != PAGE_B) {

读出此内容,如果 pageID 不为 0 并且 pageID 不为 1,则条件为 true。

关于c - if 运算中的 OR 运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59176317/

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