i++和 ++i的区别

发布网友 发布时间:2022-04-23 06:08

我来回答

2个回答

热心网友 时间:2022-04-04 19:11

i++和++i的区别:

1、i++ 返回原来的值,++i 返回加1后的值。

2、i++ 不能作为左值,而++i可以。

3、i++前者是先赋值,然后再自增;++i后者是先自增,后赋值。



如果有表达式 a = i++ ;它等价于 a = i;i = i + 1;

如果有表达式 a = ++i;它等价于i = i + 1;a = i;

++i和i++都是分两步完成的。因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i =;a =b,即++i是一个左值(可被寻址的值);i++ 的后面一步是自增,不是左值。

热心网友 时间:2022-04-04 20:29

i++与++i是有区别的,i++是运行之后再自加1,而++i是加了1后再运行程序。
对于for(i=1;i>n;i++)与for(i=1;i>n;++i)没区别。
for(表达式1;表达式2;表达式3) 语句
它的执行过程如下:
1) 先求解表达式1。
2) 求解表达式2,若其值为真(非0),则执行for语句中指定的内嵌语句,然后执行下面第3)步;若其值为假(0),则结束循环,转到第5)步。 3) 求解表达式3。 4) 转回上面第2)步继续执行。 5) 循环结束,执行for语句下面的一个语句。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com