|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 关于"++"运算符的问题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1101
人关注过本帖,
1
人收藏
标题:
关于"++"运算符的问题
只看楼主
加入收藏
bingfengX
等 级:
论坛游民
帖 子:29
专家分:40
注 册:2011-12-6
结帖率:
100%
楼主
收藏
(1)
已结贴
√
问题点数:10 回复次数:12
关于"++"运算符的问题
#include <stdio.h>
main()
{
int a=3,b;
b=(++a)+(++a);
printf("%d",b);
}
为什么输出的是10 ,而不是 9 呢?谁来祥细说一下。
搜索更多相关主题的帖子:
include
2011-12-06 22:12
举报帖子
使用道具
赠送鲜花
xj476248213
等 级:
新手上路
帖 子:31
专家分:3
注 册:2011-11-27
第
2
楼
收藏
得分:2
先进行关于a数值的运算
++a和++a那么a=5
最后简化为b=a+a;
所以b=10
2011-12-06 22:35
举报帖子
使用道具
赠送鲜花
bingfengX
等 级:
论坛游民
帖 子:29
专家分:40
注 册:2011-12-6
第
3
楼
收藏
得分:0
可以这样理解,但刚查了资料,有更正规的说法:顺序点问题
2011-12-06 23:04
举报帖子
使用道具
赠送鲜花
物极必反
等 级:
论坛游民
帖 子:54
专家分:35
注 册:2011-10-3
第
4
楼
收藏
得分:5
此乃未定义……
2011-12-06 23:50
举报帖子
使用道具
赠送鲜花
回首依依
来 自:苏州
等 级:
黑侠
威 望:
1
帖 子:193
专家分:524
注 册:2011-12-3
第
5
楼
收藏
得分:3
++a,++a,a变成5,
2011-12-07 20:29
举报帖子
使用道具
赠送鲜花
回首依依
来 自:苏州
等 级:
黑侠
威 望:
1
帖 子:193
专家分:524
注 册:2011-12-3
第
6
楼
收藏
得分:0
进行到第一个a++时,a所用内存中值为4,第二个a++时,内存值改为5,算b=++a+(++a)时,可以去掉++号,类似认为b=a+a;那么b就是10啦。可以等价为:a++;a++;b=a+a;
2012-01-01 21:04
举报帖子
使用道具
赠送鲜花
fansforever
等 级:
新手上路
帖 子:2
专家分:0
注 册:2012-1-1
第
7
楼
收藏
得分:0
其实这个计算还要看系统,有的系统按照从左到右顺序求解,即先执行++a,a变成4,再求解第二个括号的值,相当于4+5=9,而有的先执行++a两次,a变成5,然后执行+,b得10
2012-01-01 21:32
举报帖子
使用道具
赠送鲜花
小蝦米
等 级:
论坛游民
帖 子:38
专家分:88
注 册:2011-12-18
第
8
楼
收藏
得分:0
7楼正解
2012-01-01 22:16
举报帖子
使用道具
赠送鲜花
greatdyd
等 级:
新手上路
帖 子:3
专家分:0
注 册:2012-1-6
第
9
楼
收藏
得分:0
++优先级高于+优先级...所以2L正解吧
2012-01-06 08:50
举报帖子
使用道具
赠送鲜花
ertok
来 自:新疆乌鲁木齐市
等 级:
新手上路
帖 子:3
专家分:1
注 册:2012-1-4
第
10
楼
收藏
得分:0
这个问题,昨天我才从谭浩强的C程序设计中看到,C语言在计算过程中先扫描了++a,++a,对它们都进行了赋值相加,所以最后得到的是10!
赠人玫瑰,手有余香。
2012-01-06 10:34
举报帖子
使用道具
赠送鲜花
13
1/2页
1
2
快速回复:
关于"++"运算符的问题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.014851 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved