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赋值顺序不同, 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值在程序流中的变化。