++a || ++b && ++c在C语言中怎么计算

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/23 07:01:53
++a||++b&&++c在C语言中怎么计算++a||++b&&++c在C语言中怎么计算++a||++b&&++c在C语言中怎么计算这里++是单目运算符,其优先级最高,类似正负号,而逻辑运算符||(或

++a || ++b && ++c在C语言中怎么计算
++a || ++b && ++c在C语言中怎么计算

++a || ++b && ++c在C语言中怎么计算
这里 ++ 是单目运算符,其优先级最高,类似正负号,而逻辑运算符 ||(或)、&&(与)是同级的运算(从左至右运算即可),同时这两个逻辑运算符(可以看成是双目运算符)的优先级低于单目运算符.
按照上面的分析,++a || ++b && ++c 相当于 (a+1) || (b+1) && (c+1),然后再等效于((a+1) || (b+1) )&& (c+1).
例如假设a= -2 ,b= 1,c=2 :那么有
((-2+1)|| (3+1))&&(2+1)→
(-1 || 4)&& 3 →
1 && 3 →
1
{备注:
在有逻辑运算符号时,非零值等价于“1”,真命题也等价于“1”,而零和假命题作为“0 ”看.比如式子 5>10 ,它在逻辑运算中等价于“0”,所以式子(5>10)+1)=1.由此可以看出为了便于运算,最上面的推导还可以这样做(非零值直接用1代替):
假设a= -2 ,b= 1,c=2 :
((-2+1)|| (3+1))&&(2+1)→
(1 || 1)&& 1 →
1 && 1 →
1
备注完 }
另外,注意++a和a++的区别.