在c语言中?:是什么意思??

如题所述

是条件运算符。条件运算符是C语言中唯一的三目运算符,就是说他有三个运算对象。条件运算符的形式是“?:”由他构成的表达式称为条件表达式。形式为:
表达式1?表达式2:表达式3
运算功能是。先计算表达式1的值,若值为非0,则计算表达式2的值,并将表达式2的值作为整个条件表达式的结果;若表达式1的值为0,则计算表达式3的值,并将表达式3的值作为整个条件表达式的结果。
比如有以下条件表达式 (a>b)?a+b:a-b
a=8 b=4时,计算a+b=12 ,所以表达式结果为12
a=4 b=8时,计算a-b=-4,所以表达式结果为-4

参考资料:C语言程序设计教程 (北京理工大学出版社)

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-12-02
?: 是c语言中唯一的三元操作符,用法如下:
d = a?b:c;

意思就是a成立吗?如果a成立,d的值为b,否则d的值为c。
第2个回答  2010-12-02
这个运算符很常用。很有名的。基本上所有语言都支持这个叫做 三目运算符

条件 ? 结果1 : 结果2
如果条件为真 显示结果1
如果条件为假 显示结果2

例: 2<3 ? aa : bb 结果是 aa 因为 2<3是正确的
第3个回答  2020-01-13
第4个回答  2010-12-02
a=b?c:d
就是
if(b)
a=c;
else
a=d;
相似回答