++i和i++相同点:每执行一次i本身都会加1不同点:主要是在赋值时不同int a,b,c,e,f;a = c = e = f = 0;b = 1;while(c>5){ ++a; b++; c++;}//此时a=6,b=7,注意下面赋值e = a;//把自增后的值赋给ef = b;//把自增前的值赋给f//最后e = 6,b = 1
假设i的值为0则i++,返回值为0,i增加1,i的值为1++i,i增加1,i的值为1,返回值为1 如下:b=i++;//这里b的值为0,i的值为1b=++i;//这里b的值为1 ,i的值为1
简单: i++ ----->先使用i,然后再将i加个1 ++i ----->先将i加个1,然后再使用i深解: i++ ----->再运行程序的时候,系统会自动产生一个临时变量temp来存放i的值,然后使用i,最后再将temp加1赋值给i。 ++i ------>也还是直接加1使用
单独是看不出来的.i = 4;例: if (i++ == 5) if (++i == 5)第一句判断就是false, 因为i++是先执行判断,然后再++, 所以下一次判断才为true;第二句判断就是true, 因为++i是先执行+1,然后再判断,++之后i等于5,所以为true.
先赋值后加 i=1;i++ i=1先加后赋值 i=1;++i i=2