| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 849 人关注过本帖
标题:逗号表达式的问题?
只看楼主 加入收藏
c51986
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:4
专家分:1
注 册:2010-8-10
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
逗号表达式的问题?
main()
{
int a=2,b=4,c=6,x,y;
y=(x=a+b),(b+c);
printf("y=%d,x=%d",y,x);
}

为什么输出的是y=6,x=6而不是y=10,x=6

逗号表达式是取最后一个逗号右边表达式的值b+c不等于4+6=10吗

麻烦各位,指点指点


[ 本帖最后由 c51986 于 2010-8-11 00:18 编辑 ]
搜索更多相关主题的帖子: 逗号 表达 
2010-08-10 23:17
liuzhengshen
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2010-4-23
收藏
得分:4 
int  main(void)
{
int a=2,b=4,c=6,x,y;
y=(x=a+b),(b+c);/*此处(a+c)没起作用相当x的值赋给y*/
printf("y=%d,x=%d",y,x);
}
2010-08-10 23:50
liuzhengshen
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2010-4-23
收藏
得分:0 
本人现在手机回复所以格式不标准,莫见怪
2010-08-10 23:53
c51986
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:4
专家分:1
注 册:2010-8-10
收藏
得分:0 
纠结 不知道怎么去理解  http://topic.

机会是留给有准备的人
2010-08-11 00:16
Amosquito
Rank: 1
等 级:新手上路
帖 子:6
专家分:8
注 册:2010-8-4
收藏
得分:4 
回复 楼主 c51986
main()
{
int a=2,b=4,c=6,x,y;
y=(x=a+b),(b+c);      \*  (x=a+b)表示x=a+b;所以x=2+4=6。(b+c)表示b+c=6    *\
printf("y=%d,x=%d",y,x);       所以y=6,x=6
}



[ 本帖最后由 Amosquito 于 2010-8-11 00:40 编辑 ]
2010-08-11 00:37
succubus
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:4
帖 子:635
专家分:1080
注 册:2007-10-7
收藏
得分:4 
y=((x=a+b),(b+c));
想让y=10就得加括号
注意运算符优先级啊。。。

[url=http:///view/aDU1]/image/aDU1.gif" border="0" />[/url]
2010-08-11 03:48
汐杨
Rank: 2
等 级:论坛游民
帖 子:27
专家分:13
注 册:2010-7-26
收藏
得分:4 
拜托,这有什么纠结的啊!
不是说  y是等于x=(a+b),b+c这个逗号表达式的!
如果  y=(x=(a+b),(b+c))这样的话  y 就是等于 b+c  的值。
而,  y=(x=(a+b)),b+c  是这两个表达式构成了逗号表达式。
      所以y=x=6,明白不?
2010-08-11 07:29
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
收藏
得分:4 
=的优先级高于逗号,所以先运算都好左边的表达式,右边的B+C相当于没有意义
2010-08-11 08:58
真我
Rank: 4
等 级:业余侠客
威 望:1
帖 子:146
专家分:210
注 册:2010-7-14
收藏
得分:0 
看贴就能学到知识
2010-08-11 23:07
c51986
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:4
专家分:1
注 册:2010-8-10
收藏
得分:0 
恩,谢谢各位! 明白了就是优先级的问题。
刚开始学,加油!

机会是留给有准备的人
2010-08-12 12:57
快速回复:逗号表达式的问题?
数据加载中...
 
   



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

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