i = i+1 i +=1 i++ 哪个效率更高?为什么?
分析:
第一个:i = i+1 效率最低
步骤:1. 读取右i的地址
2. i+1
3. 读取左i的地址
4.将右值传给左i(编译器并不认为左右i的地址相同)。
第二个: i += 1 效率其次
步骤:1. 读取右i的地址
2. i+1
3. 将得到的值传给i(因为i的地址已经的读出)。
第三个: i ++ 效率最高
步骤:1. 读取右i的地址
2. i自增1
附加题: i++ 和 ++i 效率哪个更高?为什么?
答案: ++i 效率更高,如果不明白其中原理,看我的另一篇博文,链接如下:i++ 和 ++i 效率分析