表达式1?表达式2:表达式3
执行顺序: 先求解表达式1的值,如果为真(非0)则求解表达式2,此时表达式2的值就作为整个条件表达式的值; 若表达式1的值为假(0)则求解表达式3的值,表达式3的值就是整个条件表达式的值。 max=(a>b)?a:b 执行结果就是将表达式的值赋给max,也就是将a,b中大者赋给max。 因为条件运算符的优先级比关系运算符和算术运算符都低,因此可以把括号去掉,写成max=a>b?a:b 条件运算符的 结合方向是“自右至左” 看如下表达式: a>b?a:c>d?c:d 相当于 a>b?a:(c>d>c:d) |
|