请问,a?b:c的结果是什么,比如3?4:5(我只知道?前面为一个判断(如:a>b)的时候的情况,当它是个数是就不会了)

img

三目运算符 :
“?”前面是判断语句,如果判断语句为“真”,即“true”,则选择紧接着?后面的语句做为结果;
如果为假,则选择“:”后面的语句做为结果。
在c语言和c++中,对于真和假,比如这里的a,当a==0时即为假,当a不等于0时即为真;“0即假,非0真”。

有的语言是隐式装换,即0为FALSE,非0即是TRUE

a不是0就取b,a是0就取c

3非0,为真,所以3?4:5的值就是4
所以a ?b:c,a不等于0时,结果是b,当a等于0时,结果就是c