条件运算符与条件表达式

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a=1,b=2;
 6     
 7     printf("%d\n",a>b?a:b+1);//条件运算符实际上是if else结构的简化表达方式
 8     
 9     a*=b+1;//a=a*(b+1),a=3
10     printf("a=%d b=%d\n",a,b);
11 
12     int c=3,d=4;
13     printf("%d\n",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)

posted @ 2018-08-15 16:04  OneMusk  阅读(472)  评论(0编辑  收藏  举报