下载此文档

i++与++i哪个效率更高.doc


文档分类:行业资料 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
考点:i++和++i的效率比较。
出现频率:★★★
解析:
简单的比较前缀自增运算符和后缀自增运算符的效率是片面的, 因为存在很多因素影响这个问题的答案。 首先考虑内建数据类型的情 况:如果自增运算表达式的结果没有被适用, 而是仅仅简单地用于增 加一元操作数, 答案是明确的,前缀法和后缀法没有任何区别。 编译 器的处理都应该是相同的, 很难想象得出有什么编译器实现可以别出 心裁地在二者之间制造任何差异。
示例程序如下。
#include<>
2
3 int main()
4{
int i=0;
int x=0;
7
i++;
++i;
x=i++;
x=++I;
12 13 return 0;
14 }
上面的代码在 VISUAL C++ 上编译得到的汇编如下:
; Line 5
mov DWORD PTR_i$[dbp],0
; Line 6
mov DWORD PTR_i$[dbp],0
; Line 8
mov eax,DWORD PTR_i$[ebp]
add eax,1
mov DWORD PTR_i$[ebp],eax
; Line 9
mov eax,DWORD PTR_i$[ebp]
add eax,1
mov DWORD PTR_i$[ebp],eax
; Line 10
mov edx,DWORD PTR_i$[ebp]
mov DWORD PTR_x$[ebp],edx
mov eax,DWORD PTR_i$[ebp] add eax,1
mov DWORD PTR_i$[ebp],eax
; Line 11
mov edx,DWORD PTR_i$[ebp] add eax,1
mov DWORD PTR_x$[ebp],edx mov eax,DWORD PTR_i$[ebp] mov DWORD PTR_i$[ebp],eax
■ 代码段第 8 行和第 9 行生成的汇编代码分别对应 Lin

i++与++i哪个效率更高 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小辰GG
  • 文件大小35 KB
  • 时间2021-12-07