c语言表达式求值设intx=1,y=1;表达式(!x++||y--)的值

为什么 !x++的值是0,y--的值是1

因为++与!的运算优先级一样,并且结合性都是从右向左,所以!x++先计算x++,x++等于2,再求反,非0求反值为0,至于y--,y自减运算,运算符在后面先取y的值,再进行自减运算,y--,y的值为0,但是自减之前先取y的值参与逻辑或运算,0逻辑或1结果为1
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-06-11
(!x++||y--) = 1
y-- = 1,表示先赋值后自减,赋值是1

!x++ = !1 = 0,赋值同上,!取反本回答被网友采纳
相似回答