| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1555 人关注过本帖
标题:?:运算
只看楼主 加入收藏
yqiong
Rank: 1
等 级:新手上路
帖 子:315
专家分:0
注 册:2007-7-4
收藏
得分:0 
原帖由 [bold][underline]starwing[/underline][/bold] 于 2007-12-11 03:32 发表 [url=http://bbs.][/url]
a?b:d?e:f;这个有两种看法
(a?b:d)?e:f;和a?b:(d?e:f);
由于?:运算符是右结合的,所以应该是后面一种……
而且对于后自加操作符……嗯……这么说,到现在为止,发现自加操作会在“;”,“,”,“?”三个操作之前发生,也就是说,如果a ...

明白了,原来如此,谢谢了
2007-12-13 11:10
C语言的深度
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:卡特的怀抱
等 级:版主
威 望:1
帖 子:9577
专家分:19
注 册:2007-10-22
收藏
得分:0 
位移加条件运算符!
郁闷 我才知道

用代码打出楼房...用编程编出幸福...
2007-12-13 11:14
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
不同编译器有不同结果

—>〉Sun〈<—
2007-12-13 12:48
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
x-- > (y+x) ? 5 : 25 > y++ ? '1' : '2';

? :  先判断条件是否为真。

这个表达式有一个问题,x--  和 x,
在表达式中对一个变量使用“--”或“++”,如果该变量在表达式中出现多次,那么它的值与具体的编译器实现有关。

有一点是肯定的,表达式结束后 x 被加上了 1 。

—>〉Sun〈<—
2007-12-13 12:54
jxj777
Rank: 1
等 级:新手上路
帖 子:91
专家分:0
注 册:2007-10-27
收藏
得分:0 
printf("%d,",x-->(y+x)?5:25>y++?'1':'2');
1,  x>(y+x);  1>0+1,条件为否,执行 25>y++?'1':'2'  
2,  x--;
3,25>y?'1':'2';   条件为真,得 '1',转换为整形为49
4,y++

一个人的力量是缈小的....... 互帮互助才是出路
2007-12-14 17:16
快速回复:?:运算
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.085727 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved