关于三目运算符,你需要知道的一切

301 字
2 分钟
关于三目运算符,你需要知道的一切
if…else语句常写吧?
But,你会不会觉得:
写 if...else? 烦死了!
写switch?就俩我写啥……
于是,又一个 C艹 利器——三目运算符诞生啦!
先上代码:
mn = (a < b) ? a : b; /* 其中,? :为三目运算符,一般为“结果保存值 = 条件 ? 结果A : 结果B*/
意思即:如果 a < b,那么 mn = a,否则 mn = b`
那不就是 if...else 吗!
不,如果你用 if...else,那么代码会变成这样:
if (a < b) mn = a;else mn = b;不仅变长了,而且,三目运算符是个运算符,它可以被塞进别的语句(写 DFS 或 DP 的时候可能会用到)里面!
最后,说一下性能排名(注:这部分是早期资料,不保证真实性,实战中也鲜有人会利用这种特性,差异一般认为是评测波动即可)。三目运算符作为运算,速度最快,但也有很大的限制(比如嵌套时就会有点 BT)。而switch 和 if…else 不相上下,但是 3 个以上语句时,switch 不仅更方便,还更快哟。
但 if…else,它是最通用的,拿不准选这个就好了。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
关于 switch,你需要知道的一切
“你需要知道的一切”系列简介了 C++ 的 switch。需要注意的是,该系列作于积木鱼小学未毕业期间,难以保证正确性、时效性、趣味性。
2
关于 auto,你需要知道的一切
“你需要知道的一切”系列简介了 C++ 的 auto。需要注意的是,该系列作于积木鱼小学未毕业期间,难以保证正确性、时效性、趣味性。
3
关于__int128和short,你需要知道的一切
“你需要知道的一切”系列简介了 C++ 的 __int128 和 short 两种类型。需要注意的是,该系列作于积木鱼小学未毕业期间,难以保证正确性、时效性、趣味性。
4
题解:P16007 [CCO 2016 Day 1] Field Trip 郊游
题解讲解了如何解决洛谷 P16007。
5
运算符的关系简览
给出了一张 C++ 中运算符运算顺序的表格。
随机文章随机推荐













