| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 924 人关注过本帖
标题:关于a++和++a的问题
只看楼主 加入收藏
m289950578
Rank: 1
来 自:西安
等 级:新手上路
帖 子:6
专家分:3
注 册:2010-10-4
结帖率:100%
收藏
已结贴  问题点数:6 回复次数:17 
关于a++和++a的问题
#include<stdio.h>
main()
{
    int a=8,b=8,x,y;                                 
    x=(a++)+(a++)+(a++);                           
    y=(++b)+(++b)+(++b);                     
    printf("%d,%d,%d,%d\n",x,y,a,b);           
      }
我的输出思维是:27,30,11,11
实际输出结果为:24,31,11,11

求高手解释
搜索更多相关主题的帖子: 思维 
2010-10-04 18:51
xiao金刚
Rank: 2
来 自:广东
等 级:论坛游民
威 望:4
帖 子:67
专家分:38
注 册:2010-9-13
收藏
得分:0 
我算到的和楼主的一样。高手解释一下,我是菜鸟。
2010-10-04 19:05
whbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:180
专家分:139
注 册:2010-3-31
收藏
得分:0 
回复 楼主 m289950578
这和编译器有关!wintc下的运行结果为24,33,11,11.楼主可以看看你的编译器是怎样运行的,你先让两个a++相加,输出结果!这样去琢磨下吧!

付出终将有回报!Ibelieve!
2010-10-04 19:20
m289950578
Rank: 1
来 自:西安
等 级:新手上路
帖 子:6
专家分:3
注 册:2010-10-4
收藏
得分:0 
回复 3楼 whbc
我用的是VC++6.0,你说的方法我都试过,问题出现在第二个a++,++b那儿,但是就是解释不了

独上高楼,望见更高的楼!
2010-10-04 19:28
whbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:180
专家分:139
注 册:2010-3-31
收藏
得分:0 
回复 4楼 m289950578
你的第二个结果是什么?

付出终将有回报!Ibelieve!
2010-10-04 19:45
火龙果
Rank: 2
等 级:论坛游民
帖 子:42
专家分:79
注 册:2010-6-26
收藏
得分:0 
a++是用了再加1;
b++是加1再用;
2010-10-04 20:22
雨季醉清风
Rank: 1
等 级:新手上路
帖 子:7
专家分:7
注 册:2010-9-4
收藏
得分:0 
这个问题很基础,a++ 先使用a,然后a在自加1
                ++a,a先自加1。然后在用a。
2010-10-04 20:25
gino86
Rank: 2
等 级:论坛游民
帖 子:66
专家分:77
注 册:2010-9-17
收藏
得分:0 
这个涉及到递增运算符的前置和后置形式。
假设x=a++,则x的值为8,x= ++a,则x的值为9。
用例子说明一下吧。
x=(a++)+b
x的值为16
式子可以写成 x= a+b
              ++a
x=(++a)+b
x的值就是17
2010-10-04 20:30
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:0 
a++,++a,对a来说结果一样,但对a++和++a这两个表达式是不一样的:
a++的结果值是a原来的值,++a的结果值比a原来的值多1。

★★★★★为人民服务★★★★★
2010-10-04 21:13
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:0 
对于LZ的表达式,讨论意义不大!不同的编译器得到的结果可能是不同的!

★★★★★为人民服务★★★★★
2010-10-04 21:15
快速回复:关于a++和++a的问题
数据加载中...
 
   



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

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