C++三目运算符

上一次学习C++ 还是大一,现在都研二老狗了、、哎时光荏苒想当年好几本C++ 都被撕了用来垫饭了,可惜了。果然出来混都是要还的,废话不多说了。

当前常看到的三目运算符是这个样子的

c = a<b?a:b

这个运算符号的意思是对比a.b两值得大小,若a<b则 将a的值传输给c,否则将b的值传输给c

以下为例

#include <iostream>

using namespace std;

void test() {
    int a = 10;
    int b = 20;
    int c = a < b ? a : b;
    cout << c << endl;
}

int main() {
    test();
}

输出结果:10

这时候考虑到c++的左值与右值概念,想看一下三目运算符是否可以当做左值进行运算,程序如下:

#include <iostream>

using namespace std;

void test3() {
    int a = 10;
    int b = 20;
    (a < b ? a : b) = 100;
    cout << "a" << a << endl;
    cout << "b" << b << endl;
}

int main() {
    test3();
}
输出结果   a:100 b:20

可知,实际上执行完三目运算后,其值经过内部比较,输出代表值已经为值较小的a


   转载规则


《C++三目运算符》 秋歌 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
leecode刷题日记一 leecode刷题日记一
废话不多说,人生苦短我用python 立下此贴作为学习见证以及补充 刷题顺序就从TOP100开始刷起 之前刷的25道 回顾的时候再补充上,先从简单题刷起来 一.矩阵旋转问题1.1 题目说明给定一个 n × n 的二维矩阵表示一个图像。
2019-10-22
下一篇 
Window10 + Clion安装以及环境配置 Window10 + Clion安装以及环境配置
Window10 + Clion安装以及环境配置 安装环境:window10 MinGW-W64下载与安装下载下载网站为https://sourceforge.net/projects/mingw-w64/ Download就完事了,随后
2019-10-04
  目录