C++ 条件运算符 ? :

C++ 教程 · 2019-02-25 12:57:51
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++ 教程 文章: https://www.codercto.com/courses/l/18.html

查看所有标签

深入理解C++11

深入理解C++11

Michael Wong、IBM XL编译器中国开发团队 / 机械工业出版社 / 2013-6 / 69.00元

《深入理解C++11:C++11新特性解析与应用》内容简介:国内首本全面深入解读C++11新标准的专著,由C++标准委员会代表和IBM XL编译器中国开发团队共同撰写。不仅详细阐述了C++11标准的设计原则,而且系统地讲解了C++11新标准中的所有新语言特性、新标准库特性、对原有特性的改进,以及如何应用所有这些新特性。 《深入理解C++11:C++11新特性解析与应用》一共8章:第1章从设计......一起来看看 《深入理解C++11》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具