C语言中 "?:" 是干嘛用的? 怎么用?

看到这么一段程序
maxscore = score[i] > maxscore ? score[i] : maxscore;

虽然联系上下文我晓得他是干嘛用的..
不过C语言我是自学的..好像书里之前没讲过"?:"这个东西..
请问这是干什么用的?
该怎么用?
谢谢.
或者找相关的教程给我也好..

? : 是条件操作符,

exp1?exp2:exp3;

如果exp1为真,则返回exp2的值,否则返回exp3的值。

score[i] > maxscore ? score[i] : maxscore;

如果score[i] > maxscore为真(成立),则返回score[i]的值,否则返回maxscore的值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-10-03
C中的?是连接前后文的 就象语文中的并且的意思
第2个回答  2008-10-03
如果score[i] > maxscore那么就等于score[i],否则就等于maxscore
第3个回答  2008-10-03
a:b?c
相当于
if(a)
b;
else
c;
相似回答