菜鸟请教:
在c里,++放在前面和放在后面有什么区别???? 问题点数:0、回复次数:8Top
1 楼613613(无余)回复于 2004-05-04 20:08:54 得分 0
++i:先执行i=i+1后,再使用i值
i++:先使用i值后,在执行i=i+1
如:i=2;那么j=++i执行时:i值变为4,然后赋给j,j=4
j=++i执行的话,是先将i=3赋给j,j=3,然后i成为4。
(书上写的:))Top
2 楼613613(无余)回复于 2004-05-04 20:10:01 得分 0
++i:先执行i=i+1后,再使用i值
i++:先使用i值后,在执行i=i+1
如:i=3;那么j=++i执行时:i值变为4,然后赋给j,j=4
j=++i执行的话,是先将i=3赋给j,j=3,然后i成为4。
(书上写的:))
上面的写错了,(抄错:))Top
3 楼jjwkl2000(.oоО)回复于 2004-05-04 20:12:51 得分 0
举个简单的例子 i=2;a=i++; a=2; 而 i=3;
b=++i; b=3; i=3;
Top
4 楼mayabuluo(玛雅部落)回复于 2004-05-04 20:15:02 得分 0
明白了Top
5 楼bobseadream(bobo)回复于 2004-05-04 20:33:16 得分 0
是有区别的,先看下面一段代码:
int k,i=0;
k=i++;
printf("k=%d i=%d\n",k,i);
i=0;
k=++i;
printf("k=%d i=%d",k,i);
会输出如下结果:
k=0 i=1
k=1 i=1
可以看出:i++是先执行相关语句后再自增1,而++i是在执行语句之前先自增1。
Top
6 楼sbleon(范黎斯特鲁帝)回复于 2004-05-05 13:09:18 得分 0
哇~~~好厉害哦~~~Top
7 楼xz168888(静以修身)回复于 2004-05-06 11:33:31 得分 0
区别楼上的用一个很明了的程序回答了你但是我要说的是
正确对待他们的区别别乱用如果乱用会给你的程序带来你预料不到的问题特别在循环的时候要具体问题具体分析以免做的结果与预想的向违背!!!!!!!Top
8 楼79bo(山芋)回复于 2004-05-06 11:45:07 得分 0
如果在程序里单是写++i;和i++;,那么运行起来没有什么区别.
但如果是a=i++;和a=++i;就有区别了,a=i++;是先把i值给a,然后在自加1;a=++i是先自加1在把自加后的i给a;Top




