条件运算符 是由问号“?”与“:”组成的,用于连接三个运算对象,是C语言中唯一的三目运算符。
条件运算符的优先级高于赋值运算符和逗号运算符,而低于其他运算符。其结合性为“自右向左”。
条件表达示 用条件运算符将运算对象连接起来的式称为条件表达式。
它的一般格式为: 表达式1 ? 表达式2 : 表达式3
条件表达式的求值过程是:先计算表达式1,或为非0值(真值),则计算表达式2,并将在其作为整个表达式的值;否则计算表达式3,并将其作为整个表达式的值。
示例:
/*
此程序是说明条件表达示的用法
2012年9月26日17时19分;
*/
# include <stdio.h>
int main(void)
{
int a, b, c, d, x;
a = 4;
b = 3;
c = 5;
d = 7;
x = a<b?a:c<d?c:d; // 此行看起来有点复杂,只要把(c<d?c:d)看成一个整体就容易理解了;
printf("%d\n",x);
return 0;
}
/* 执行结果:
-------------
5
Press any key to continue
-------------
*/