C++ 条件运算符怎么用?三元操作符语法和示例详解?

文章导读
Previous Quiz Next Exp1 ? Exp2 : Exp3; 其中 Exp1、Exp2 和 Exp3 是表达式。请注意冒号的使用和位置。? 表达式的值是这样确定的:首先求值 Exp1。如果 Exp1 为真,则求值 Exp2,并将其作为整个 ? 表达式的值
A A

C++ 条件 ? : 操作符



Previous
Quiz
Next
Exp1 ? Exp2 : Exp3;

其中 Exp1、Exp2 和 Exp3 是表达式。请注意冒号的使用和位置。? 表达式的值是这样确定的:首先求值 Exp1。如果 Exp1 为真,则求值 Exp2,并将其作为整个 ? 表达式的值。如果 Exp1 为假,则求值 Exp3,并将其值作为表达式的值。

? 操作符被称为三元操作符,因为它需要三个操作数,并且可以用来替换 if-else 语句,后者的形式如下 −

if(condition) {
   var = X;
} else {
   var = Y;
}

例如,考虑以下代码 −

if(y < 10) { 
   var = 30;
} else {
   var = 40;
}

上面的代码可以这样重写 −

var = (y < 10) ? 30 : 40;

在这里,如果 y 小于 10,则 x 被赋值为 30,否则赋值为 40。你可以尝试以下示例 −

#include <iostream>
using namespace std;
 
int main () {
   // 局部变量声明:
   int x, y = 10;

   x = (y < 10) ? 30 : 40;
   cout << "value of x: " << x << endl;
 
   return 0;
}

当上面的代码被编译并执行时,会产生以下结果 −

value of x: 40