| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 851 人关注过本帖
标题:C程序 A++问题
只看楼主 加入收藏
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
收藏
 问题点数:0 回复次数:18 
C程序 A++问题
main()
{
int a,b=0;
for(a=1; a<=3; a++)
b++;
printf("a=%d,b=%d\n",a,b);
}

上面的a++,b++换成++a,++b,出来四种情况,结果都是一样。

昨地回事?

2006-02-12 14:03
超级新手
Rank: 2
等 级:论坛游民
帖 子:185
专家分:59
注 册:2006-2-9
收藏
得分:0 
这个,需要说明的是 ++ -- 运算符 出现在长表达式才有意义;

快快来我的群:13485998
学学C,玩玩算法,搞搞加密,比比谁更菜?
ARM恨死你。
2006-02-12 14:07
zushuboderen
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2005-12-24
收藏
得分:0 
这里没有前后的区别啊...................

冷静点............. 耐心点.............
2006-02-12 14:09
刘半仙
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-2-11
收藏
得分:0 
++x 是先自增然后参与运算
x++ 是先运算然后自增

如:x=1;
y=x++; y=1 运行完这句 x=2
y=++x; y=2 x=2

2006-02-12 14:11
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
收藏
得分:0 
a++ 就相当于 a=a+1
++a 则相当于 结果等于a+1, 但 a仍等a.

这个.....??

最好的域名、虚拟主机、VPS  www.
2006-02-12 14:12
超级新手
Rank: 2
等 级:论坛游民
帖 子:185
专家分:59
注 册:2006-2-9
收藏
得分:0 

2楼 最能说明这个问题。。。明查


快快来我的群:13485998
学学C,玩玩算法,搞搞加密,比比谁更菜?
ARM恨死你。
2006-02-12 14:13
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
收藏
得分:0 
以下是引用刘半仙在2006-2-12 14:11:00的发言:
++x 是先自增然后参与运算
x++ 是先运算然后自增

如:x=1;
y=x++; y=1 运行完这句 x=2
y=++x; y=2 x=2

咦,按我的理解

y=++x y=2没错, x应等1.

原来,X也要自增么?


最好的域名、虚拟主机、VPS  www.
2006-02-12 14:15
刘半仙
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-2-11
收藏
得分:0 
a++ 和 ++a 都相当与 a=a+1不过加1的时机不一样,前者是先参与运算,然后自己再加1,后者是先自己加1然后再参与运算~

就你给的代码中由于a++ 和++a都是独立的表达式没有其他运算了,所以导致结果一样~

2006-02-12 14:16
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
收藏
得分:0 
谢谢,问题明白.

不管 x++ ++x x都要自增且x相等,但x++与++y的结果不一样

最好的域名、虚拟主机、VPS  www.
2006-02-12 14:30
zhangjuan
Rank: 1
等 级:新手上路
帖 子:992
专家分:0
注 册:2006-1-19
收藏
得分:0 
to 楼主:论坛中有关于i++,++i,i--,--i的具体说明,
搜索一下就行了,我就不说了。

2006-02-12 14:34
快速回复:C程序 A++问题
数据加载中...
 
   



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

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