int n=c?a:b 是什么意思?该如何处理

int n=c?a:b 是什么意思?
int n=c?a:b 是什么意思?

------解决方案--------------------
c不为0 n=a,否则n=b
------解决方案--------------------
c?a:b是一个问号表达式,如果成为真,则该表达式值为a,反之则为b,最后把问号表达式的值赋给n
------解决方案--------------------
int n=c?a:b
这个从右到左看
首先看c?a:b
是否符合c的条件,如果符合,返回a,否则返回b。
int a = 11;
int b = 10;
int c = 0;
int n;
n = c?a:b; 则n=10
如果c=-1892(非0); 则n=11
------解决方案--------------------
int n=c?a:b 
这是对变量n初始化,意思是当c不为0的时候n=a,当c为0的时候n=b!
其中 ? : 是唯一的一个三目运算符!
呵呵!