为什么以下C代码中的后递减运算符不能按要求工作?(值为7)



为什么以下C代码中的后递减运算符不能按要求工作?(值为7(。知道这不是一种未定义的行为。

#include<stdio.h>
int main()
{
int a = 8, r;
r = (a==8) || (a--);
printf("a = %dn", a);
return 0;
}

在表达式(a==8) || (a--);中,由于(a==8)已经为真,因此不计算OR条件的其余部分。

最新更新