c++条件运算符问题

来源:百度知道 编辑:UC知道 时间:2024/07/07 02:55:35
若有条件表达式(exp)?a++:b--,z则以下表达式中能完全等价表达式(exp)的是
a.(exp==0) b(exp!=0) c (exp==1) d (exp!=1)
请详细解释一下
exp==0呢?为什么要他是真呢,exp==0不就是假吗,为什么不能选a呢

exp作为条件,成立则为True,不成立则为false。在C中,非0就是Ture,但不是非1就是flase。

所以B,exp!=0就是exp非零时候条件成立,和exp就是一个意思了!

exp==0就是当exp==0的时候条件成立啊!

?:运算符表示
a ? b : c
如果a==0,整个表达式值为c,如果a!=0,整个表达式值为b
所以.
答案选b

b

0为假,非0为真.
exp!=0就是exp不等于假,即判断exp是否为真.

c有局限性,为真不一定是1,也可能是2,3,4...非0就可以

选b
exp!=0就是exp不等于假,即判断exp是否为真.

c有局限性,为真不一定是1,也可能是2,3,4...非0就可以