c语言中有几十多种运算符,这些运算符撑起了除了输入输出以外的大量门面,除了常见的加减乘除等等一些单目和双目的运算符,还有比较特殊的三目运算符,今天聊一聊这三目运算符到底是什么。
c语言中只有这一个三目运算符,被成为条件运算符
语法规则如下:
返回值 = 表达式1?表达式2:表达式3
表达含义:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假,则执行表达式3 ,并返回表达式3的结果。
例如:
2>1 ? 1 : 2
看第一个表达式的位置是2>1,很显然这是成立的式子,所以为真,则执行表达式2,表达式2即1,所以这个带有三目运算符的式子最终结果就是1
三目运算符的使用在逻辑上可以看出是一个条件判断的语句,所以它可以完全被条件语句所替代,上面的例子也可以改写为:
if
是不是效果一样呢?
但是直观上可以看出,使用三目运算符更为简洁,所以在一般搞算法的人打比赛时,会优先选择使用一些特殊的运算符来减轻代码的冗余从而提高编程速度。
关于三目运算符和c语言中其他的运算符的详细内容和相关试题可以参考:
三目运算符 - C语言教程 - C语言网www.dotcpp.com