日期:2014-05-20  浏览次数:20816 次

关于i++和++i的区别,大家帮忙看一下~~~
以前上课的时候,老师说i++是先操作,再自加1;++i是先自加1,再进行操作
今天看到的排序函数的循环条件里
                                    private   int   min;  
public   void   Sort(int   []   list)  
{  
for(int   i=0;i <list.Length-1;++i)   //就是这句话
{  
for(int   j=i+1;j <list.Length;++j)  
{  
if(list[j] <list[i])  
min=j;  
}  
int   t=list[min];  
list[min]=list[i];  
list[i]=t;  
}  
}

我把++i改成了i++
发现结果没有什么不一样,请问这里写++i   和i++有什么不一样吗?
先谢过了~~~


------解决方案--------------------
for(int i=0;i <list.Length-1;++i) //就是这句话
这里++i和i++的效果是没有什么区别的。
而在int n=i++这样用的地方就不同了
------解决方案--------------------
就只是少循环一次和多循环一次嘛,没有什么太大的区别
------解决方案--------------------
放在表达式里才有区别,单独的没有区别

int a=1,b=2;
a = b++;//a=2 b=3

int a=1,b=2;
a = ++b;//a=3 b=3
------解决方案--------------------
假设 现在i=1;
那么
  j=i++
之后j 就等于1
如果是
j=++i;
之后j就等于 2