条件运算符与条件表达式

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a=1,b=2;
 6     
 7     printf("%d
",a>b?a:b+1);//条件运算符实际上是if else结构的简化表达方式
 8     
 9     a*=b+1;//a=a*(b+1),a=3
10     printf("a=%d b=%d
",a,b);
11 
12     int c=3,d=4;
13     printf("%d
",a>b?a:c>d?c:d);//条件运算符从右往左运算,相当于a>b?a:(c>d?c:d)
14 
15     return 0;
16 }

打印结果:

注:

1.条件运算符实际上是if else结构的简化表达方式。

2.条件运算符的优先级低于关系运算符和算术运算符,但高于赋值符。

3.条件运算符的结合方向是自右至左(类似于赋值运算符 a=b=c=4)

原文地址:https://www.cnblogs.com/onemusk/p/9482018.html