y = (x>0) ? x+2 : x*x; c语言中啥意思

如题所述

y = (x>0) ? x+2 : x*x;
等价于
if(x>0) y=x+2;

else y=x*x;

a?b:c
这个是条件表达式,表示如果a为真,则表达式值为b,如果a为假,则表达式值为c
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-18
语法 a?b:c的意思是 如果a成立 他的结果就是b 否则就是c
你这个情况就是 x>0成立吗? 成立就把x+2赋值给y 不成立就把x平方赋值给y
这个写法就是比较简洁 不过不是很容易懂 比你的例子更复杂的情况就不推荐这样写了
第2个回答  2013-04-19
看x是否大于0,若大于0,y=x+2,若小于或等于0,y=x*x,即x的平方,你自己可以编译一下
第3个回答  2013-04-18
这是C语言中的双目运算 意思是如果(X>0)则y=x+2否则y=x*x
第4个回答  2013-04-18
如果x>0,那么y就等于x+2,否则,y就等于x平方

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网