首页 新闻 会员 周边

条件运算符 【?:】

0
[已解决问题] 解决于 2007-12-19 11:31
<P>条件运算符 (?:) 根据布尔型表达式值返回两个值中的一个。条件运算符用于下列形式的表达式中:<BR><I>cond-expr</I> <B>? </B><I>expr1 </I><B>: </B><I>expr2<BR></I>其中: <BR><I>cond-expr</I> <B>bool</B> 类型的表达式。 <BR><I>expr1</I> 一个表达式。 <BR><I>expr2</I> 一个表达式。 </P> <P>----------------------------------<BR>上面是官方的解释,我想实现其中个表达式不做任何事情,该如何写Code?<BR>即改写:&nbsp; if(1&gt;0){i=0;}为<BR>1&gt;0?i=0:;<BR>后面什么也不写编译不过去,我记得C语言可以的啊!!!!</P>
问题补充: 发现一个变通的方法:if(1>0)i=0;
斧头帮少帮主的主页 斧头帮少帮主 | 菜鸟二级 | 园豆:220
提问于:2007-12-18 17:02
< >
分享
最佳答案
0
?:三元操作符不是这么用的 一般是用于赋值的: int a = 1; int b = 2; int i = a > b ? a : b; 有需要根据某个条件来决定使用哪个值的时候就能使用这个三元操作符。 其本质是根据布尔表达式的结果来返回?号后面或者:号后面的值。 如上例中,如果需要将i传给某个函数foo,也可以不使用i而直接使用三元表达式: foo(a > b ? a : b);
Klesh Wong | 小虾三级 |园豆:780 | 2007-12-18 18:43
其他回答(2)
0
1>0?i:0 应该这么写
林骄 | 园豆:195 (初学一级) | 2007-12-18 17:33
0
cond-expr ? expr1 : expr2 => if(cond-expr) expr1 ; else expr2;
wingoo | 园豆:1513 (小虾三级) | 2007-12-18 18:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册