|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 赋值运算这块不是很理解,很模糊???
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
570
人关注过本帖
标题:
赋值运算这块不是很理解,很模糊???
只看楼主
加入收藏
左手拉拉
等 级:
新手上路
帖 子:40
专家分:2
注 册:2012-3-3
结帖率:
80%
楼主
收藏
问题点数:0 回复次数:10
赋值运算这块不是很理解,很模糊???
#include <stdio.h>
void main()
{
int a=1,b=2,c=3;
printf("%d,%d,%d,%d\n",a=b=c,a==b==c,a==(b=c),a==(b==c));
}
结果为什么是3,0,0,0呢?不是很理解?
搜索更多相关主题的帖子:
void
include
2012-03-05 20:03
举报帖子
使用道具
赠送鲜花
有容就大
来 自:东土大唐
等 级:
版主
威 望:
74
帖 子:9048
专家分:14309
注 册:2011-11-11
第
2
楼
收藏
得分:0
a==(b==c) b 等于 c 吗? 不等于 b==c 这个表达式的值是0, a == 0 吗 不等于 所以这个表达式的值也是0 那么a==(b==c) 整个表达式的值就是0.
a = b = c;是将c的值赋给a b,输出时匹配的是a的值。
梅尚程荀
马谭杨奚
2012-03-05 21:01
举报帖子
使用道具
赠送鲜花
庄飞
等 级:
新手上路
帖 子:8
专家分:2
注 册:2012-1-15
第
3
楼
收藏
得分:0
3的过程:a=b=c,"="是赋值号,求解的过程是把c的值给b,此时b=3,再把b值给a,所以a=3;
后面的三种情况都是涉及“等号”,“==”的意思是相等,由于a,b,c的值明显的不相等,所以其结果都是为0;
2012-03-05 21:08
举报帖子
使用道具
赠送鲜花
qq0800
等 级:
论坛游民
帖 子:6
专家分:14
注 册:2012-2-16
第
4
楼
收藏
得分:0
=赋值为从右向左的结合律;
==为逻辑运算符,从左往右结合律;
另外,我想说的是,这个题目是不是本身有问题:对于不同的编译器,可能会有不同的结果。
在函数printf中,第一个参数a=b=c,此时abc的值都是3,那执行后面的参数调用值的时候是取3,还是取初始化的时候的值,不同的编译器有不同的答案(第三个参数有关系)。
2012-03-05 22:58
举报帖子
使用道具
赠送鲜花
左手拉拉
等 级:
新手上路
帖 子:40
专家分:2
注 册:2012-3-3
第
5
楼
收藏
得分:0
回复 2楼 有容就大
如果c=3,而赋值语句b=c后,c的值还可以还是3吗?
2012-03-06 15:43
举报帖子
使用道具
赠送鲜花
icysky
来 自:心灵世界
等 级:
职业侠客
威 望:
1
帖 子:172
专家分:399
注 册:2011-5-17
第
6
楼
收藏
得分:0
回复 5楼 左手拉拉
b=c
为b赋值 改变的是b
不管c的事
不管怎么走、总有一个终点...
2012-03-06 15:54
举报帖子
使用道具
赠送鲜花
有容就大
来 自:东土大唐
等 级:
版主
威 望:
74
帖 子:9048
专家分:14309
注 册:2011-11-11
第
7
楼
收藏
得分:0
回复 5楼 左手拉拉
没有改变c值的语句出现,c的值不变。当c在 = 左边时就需要注意了,在右边一般不会改变。
梅尚程荀
马谭杨奚
2012-03-06 16:27
举报帖子
使用道具
赠送鲜花
天天涯涯
等 级:
业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
第
8
楼
收藏
得分:0
上面都说了,我飘过。
2012-03-06 17:54
举报帖子
使用道具
赠送鲜花
ilovebaishi
等 级:
新手上路
帖 子:4
专家分:1
注 册:2011-8-7
第
9
楼
收藏
得分:0
乐了
2012-03-06 19:19
举报帖子
使用道具
赠送鲜花
左手拉拉
等 级:
新手上路
帖 子:40
专家分:2
注 册:2012-3-3
第
10
楼
收藏
得分:0
回复 2楼 有容就大
不是吧,a=b=c,后,abc的值都是3了啊,所以b==c应该是成立的啊,所以b==c的值应该是1啊,然后再赋给a,那么a=1啊,不是0啊?
2012-03-06 20:26
举报帖子
使用道具
赠送鲜花
11
1/2页
1
2
快速回复:
赋值运算这块不是很理解,很模糊???
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.055003 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved