c++ - if 语句和 --variable

标签 c++ if-statement

我正在准备我的 C++ 考试,并且正在做一些过去的论文。然后我偶然发现了这个代码理解任务。我想知道,为什么这个 if 语句中的值没有更改为 4?

int found = 0, value = 5;
if (!found || --value == 0) {
    cout << "danger";
}
cout << "value =" << value << endl;

最佳答案

if (!found || --value == 0)

在逻辑或运算中,如果满足第一个条件,则不会评估第二个条件。这里 !found 为 TRUE,它不会执行 --value,因此它的值为 5。

关于c++ - if 语句和 --variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50098501/

相关文章:

c++ - 是否不再包含在 MinGW 和/或 MSYS 中?

IF 中的 MySQL 计数

c# - “if(condition) int+ +"and int += "Convert.Toint32(condition)”之间的区别

java - if (a - b < 0) 和 if (a < b) 之间的区别

c++ - 点绕轴旋转

c++ - 初始化哈希表 C++

c++ - 两个相邻的 ## 运算符

python - 等效的 C++ 时区转换?

c# - SQL select where但只检查参数是否为真

php - 如何使文件编辑成为有条件的?