码迷,mamicode.com
首页 > 其他好文 > 详细

理解i++和++i

时间:2017-03-06 13:42:42      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:源码   nbsp   保存   ext   知识   传值   i++   int   基础   

理解i++和++i

  i++和++i是C/C++基础知识,i++是先传值后自增,++i是先自增后传值。汇编源码如下:

	int xx;
	int x = 1;
00F61702  mov         dword ptr [x],1 
	xx = x++;
00F61709  mov         eax,dword ptr [x]     //将x值保存到eax
00F6170C  mov         dword ptr [xx],eax     //eax赋值给xx
00F6170F  mov         ecx,dword ptr [x]     //将x值保存到ecx
00F61712  add         ecx,1            //ecx加1
00F61715  mov         dword ptr [x],ecx     //ecx赋值给x
	int z = 2;
00F61718  mov         dword ptr [z],2 
	xx = ++z;
00F6171F  mov         eax,dword ptr [z]     //将z值保存到eax
00F61722  add         eax,1            //eax加1
00F61725  mov         dword ptr [z],eax     //eax赋值给z
00F61728  mov         ecx,dword ptr [z]     //z传值给ecx
00F6172B  mov         dword ptr [xx],ecx     //ecx传值给xx

 

理解i++和++i

标签:源码   nbsp   保存   ext   知识   传值   i++   int   基础   

原文地址:http://www.cnblogs.com/hgwang/p/6509266.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!