我正在准备我的 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/