作者:手机用户2502853847 | 来源:互联网 | 2023-01-06 15:00
我正在努力理解我教授编写的代码.代码中有一行说
a =(b> c)?c:b;
其中a,b和c只是浮点变量.这是我第一次看到这个表达.我试图谷歌它但没有出现.对此的任何解释或链接都受到欢迎.谢谢.
1> Sumner Evans..:
这是一个三元表达.三元表达式采用以下形式:
condition ? :
三元表达式可以转换为if
语句:
if (condition) {
;
} else {
;
}
三元表达式相对于等效if
语句的优点是变量声明.例如,以下if
语句和三元表达式是等效的,但很明显哪个更简洁:
int secOnds= 4;
// ===== USING IF STATEMENT =====
string secs_string;
if (secOnds== 1) {
secs_string = "second";
} else {
secs_string = "seconds";
}
cout <<"You have " <
请注意,使用a if
需要在if
语句之外对字符串进行单独声明,而使用三元表达式时,可以内联完成.
进一步阅读
cplusplus.com上的条件(或三元)运算符(?:)