i++和++i的意思分别是:
i++ :先引用i的值,后增加i的值;
++i :i的值先增加,后引用i的值
换句话就是:
i++ : 先在i所在的表达式中使用i的当前值,再让i加1。
++i : 先让i加1,再在i所在的表达式中使用i的新值。
无论i++还是++i,都可以让i的值自增,但是对于引用它们的对象来说,意义却是不同的,这主要取决于++和i的相对位置:
++在i前面,i先加1,然后在表达式中用i的值;++在i后面,先在表达式中用i的值,然后i再加1。
扩展资料:
我们通过两个例子来理解i++和++i 的使用:
1、i++的使用:
int i=1,a=0;
a=i++;
则此时经过运算后,i=2,a=1。
2、++i的使用:
int i=1,b=0;
b=++i;
则此时经过运算后,i=2;b=2。
++i 和 i++在单独使用时起到的作用就是 i=i+1,即后一个值是前一个值加一。
++i是使用i之前先使i加一。i++是使用i之后再加一。如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。
例如:a = ++i,相当于 i=i+1; a = i; a = i++,相当于 a = i; i=i+1;
扩展资料
“++”符号是编程语言中的自增运算符,作用是在运行后将变量的数值自动加一,“++”符号所处的位置不同,运算规则也不同,当“++”放在变量前方时,如 ++i,此时的作用是先将i变量中的数值进行加一运算,然后再将运算后的数值加入运算,而i++是先将i中的数值加入运算,然后再自加一。
i++的用法:
class YanShi{ public static void main(String[] args) { int i = 3; i = i++; System.out.println("i="+i); }}//输出是 i = 3
class YanShi_01
{ public static void main(String[] args) { int i = 3,j; j = i++; System.out.println("i="+i+",j="+j); }}//输出i=4,j=3
参考资料百度百科-++
"++"是C和C++里的自增运算符。其中:++i是使用i之前先使i加一。i++是使用i之后再加一。
如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。
前置后置区别的举例
(1)a = i++;相当于 a = i; i++。
(2)a = ++i;相当于 i++; a = i。
扩展资料:
自增自减运算符存在于C/C++/C#/Java等高级语言中,它的作用是在运算结束前(前置自增自减运算符)或后(后置自增自减运算符)将变量的值加(或减)一。
相较于这些语言中的+=和-=运算符,自增运算符更加简洁,且可以控制效果作用于运算之前还是之后,具有很大的便利性。
参考资料:百度百科---自增自减运算符
a = i++,分为两步:
1、a=i;把i的值赋给a。
2、i=i+1;i加1。
相同的,对于b=++i,也分为两步:
1、i=i+1;i加1。
2、b=i;把i的值赋给a。
i++和++i,两者的运行结果,i的值都加了1。
"++"是C和C++还有JAVA等高级语言里的自增运算符,使可变左值(如变量,迭代器变量等)加一。
扩展资料
举例理解++运算符:
int i=3;
int j=4;
int a = i++;
int b = ++j;
printf("%d, %d\n", a, b);
理解一下“++前置:i自增1后再参与其它运算;
++后置:i参与运算后,i的值再自增1”。
很明显,a = i++;由于是先执行赋值运算,再自增,所以结果是a=3,i=4;而b = ++j;
则因先自增,然后再赋值,所以b,j均为5。
参考资料
"++"是C和C++里的自增运算符。
其中:++i是使用i之前先使i加一。i++是使用i之后再加一。如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。
i++ 等价于 i=i+1,i-- 等价于 i=i-1。
相似的++i 等价于 i=i+1,--i 等价于 i=i-1。
扩展资料:
相较于这些语言中的+=和-=运算符,自增运算符更加简洁,且可以控制效果作用于运算之前还是之后,具有很大的便利性。
i++和++i区别在于,当i=2时:
j=i++, j=2 先j=i,再i=i+1
j=++i , j=3 先i=i+1 ,再j=i
参考资料:百度百科-自增自减运算符