C++ 条件运算符 ? :

C++ 条件运算符 ? :

C++ 运算符

Exp1 ? Exp2 : Exp3;

其中,Exp1、Exp2 和 Exp3 是表达式。请注意冒号的使用和位置。? : 表达式的值取决于 Exp1 的计算结果。如果 Exp1 为真,则计算 Exp2 的值,且 Exp2 的计算结果则为整个 ? : 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,且 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,则 var 被赋值为 30,如果 y 不小于 10,则 var 被赋值为 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

C++ 运算符

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《C++ 条件运算符 ? :》
文章链接:https://zhuji.vsping.com/329555.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。