i++和++i有什么区别

i和i赋值顺序不同,i是先加后赋值,i是先赋值后加;i和i都是分两步完成的!

i++和++i有什么区别

文章插图
i和i赋值顺序不同,i是先加后赋值,i是先赋值后加;i和i都是分两步完成的 。因为i是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,i=a=b,即i是一个左值;i的后面一步是自增,不是左值 。
i和i效率不同,比如i=3,b=i就是说b=3,完成之后让i变成4,b=i就是先让i变成4,然后b=4,其中i比i效率要高 。一般来说在循环域里面,这两者并没有什么很大的区别,但是要注意其生存周期,以及i值在程序流中的变化 。
【i 和 i有什么区别】