I++和++I的区别

如题所述

a= i++;
则相当于 a=i;i=i+1;
a=++i;
则相当于 i=i+1;a=i;

也就是++i是先加1,然后使用加1后值。
i++是使用i原来的值,然后再改变i的值加1。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
这个是C的基础,看了好几遍书的我刚刚开始还是不明白,最后编程试了试就知道了
#include<stdio.h>
int main(void)
{
int m=n=0;
int I=0;
m = I++;
n = ++I;
printf ( "m=I++=%d n=++I=%d\n",m,n );

return (0);
}
显示的是 m=I++=0 n=++I=1,所以呢I++是在复制之后在加1的,而++I是先加1的。

意思是一个是用完后自增1,一个是自增1以后再用。本回答被网友采纳
第2个回答  2012-01-04
I++,是本次循环中,I的值为I,下次循环中I的值为I+1
++I,是本次循环中,I的值为I++,下次循环中I的值为I+2

意思是一个是用完后自增1,一个是自增1以后再用。
第3个回答  2018-12-01

从效率以及左右值、作用来看差别很大,详情请看我的博客++i、i++、i+=1、i=i+1的区别不复制黏贴了

相似回答