i = i+1 i +=1 i++ 哪个效率更高
2018-03-28 09:10
204 查看
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 效率分析
分析:
第一个: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 效率分析
相关文章推荐
- Foxyproxy和autoproxy哪个效率更高?
- x=x+1, x+=1, x++ 哪个效率更高?
- i++与++i哪个效率更高
- 哪个效率更高?x=x+1, x+=1, x++
- i++与++i哪个效率更高?
- C/C++面试题:i++与++i哪个效率更高?
- i++与++i哪个效率更高
- 堆和栈访问效率哪个更高
- i++ 与 ++i 的效率哪个更高
- 哪个效率更高?x=x+1, x+=1, x++
- ++i 与i++哪个效率更高?
- synchronized与lock,哪个效率更高
- 面试题 i++和++i哪个效率更高
- i++与++i哪个效率更高?
- ++i和i++哪个效率更高
- 磁盘读写和数据库读写哪个效率更高?磁盘读写与数据库的关系
- 磁盘读写和数据库读写哪个效率更高?磁盘读写与数据库的关系
- 堆和栈访问效率哪个更高
- i++ 与 ++i 的效率哪个更高?
- MySQL select * 和把所有的字段都列出来,哪个效率更高?