条件运算符嵌套
来源:互联网 发布:海洋cms怎么用 编辑:程序博客网 时间:2024/04/29 16:02
条件运算符(?:)都知道就不细说了,最简单也是最常用的例子:n = (a > b) ? a : b;
在C++ primer plus第六版180页看到了一个例子,如下所示:
const char x[2] [20] = {"Jason","at your services\n"}
const char * y = "Quillstone";
for(int i = 0; i <3; i++)
cout<<((i < 2)? !i ? x[i] : y : x[1]);
打印结果为:
Jason Quillstone at your services
乍一看有点愣住,但仔细看就会发现,原表达式的意思是(i < 2)? (!i ? x[i] : y) : x[1],再对照结果一看,印证了我的想法。在网上找到的例子中还有各种眼花缭乱的嵌套用法,但只要找到每个(?:)运算符应该是怎么配对的,就很容易理解了。
还有一点,该书中说这个技巧完成了一个应被谴责的任务——隐藏代码,书中没有解释,网上也没有相关的资料。那这个条件运算符的代码隐藏体现在什么地方呢?我的理解就是:1、隐藏了一对圆括号。2、将代码缩短了,使得其难于理解。
说了这么多,然而这个条件运算符嵌套并没有什么卵用。最常用的就那种最简单的形式,嵌套的越多代码越难于阅读和理解,这时候使用 if else 语句来表达会更为清晰。
- 条件运算符嵌套
- 条件运算符嵌套
- 条件运算符的嵌套
- 条件运算符的嵌套
- 条件运算符的嵌套
- 条件运算符嵌套问题:成绩评级
- C算法-条件运算符嵌套
- 7 嵌套与条件运算符
- 关于条件运算符的嵌套的java程序题
- 09_条件运算符的嵌套的使用
- 三目运算符多条件嵌套小解
- 100经典之(五)---条件运算符的嵌套
- Java学习笔记(条件运算/运算符优先级/条件语句if/if..else/多重if/嵌套if)
- 【程序15】利用条件运算符的嵌套完成学习成绩的转换。
- 条件运算符与逗号的嵌套的疑问,求大神解答(已自行解决)
- java50道经典题之5条件运算符的嵌套
- Java基础编程之利用条件运算符的嵌套来计算学生成绩
- 利用条件运算符的嵌套来完成学生成绩的表示
- [创业]领导大局观
- R 正则表达式例子
- 阿里巴巴笔试题选解
- Autoresizing的使用方式
- 数据库Sharding的基本思想和切分策略
- 条件运算符嵌套
- ByteBuffer使用总结
- hdu 5366 The mook jong 动态规划
- 大数据平台现有信息
- file,bitmap工具类
- 24时区,GMT,UTC,DST,CST时间详解
- JTextArea范例
- Qunie——自我生成程序
- matlab 中的结果取整函数的区分