扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:cnss 来源:论坛 2007年11月16日
关键字:
// File 1 extern void func (int *, int *); int g, h; int main() { int i = 0; int j = 1; g = 5; h = 6; func(&I, &j); g = g + i; h = h + i; return 0; } // File 2 extern int g; extern int h; void func(int *pi, int *pj) { *pj = g; h = *pi; } |
sub esp, 8 lea eax, DWORD PTR _j$[esp+8] push eax lea ecx, DWORD PTR _i$[esp+12] push ecx mov DWORD PTR _i$[esp+16], 0 mov DWORD PTR _j$[esp+16], 1 mov DWORD PTR ?g@@3HA, 5 mov DWORD PTR ?h@@3HA, 6 call ?func@@YAXPAH0@Z mov eax, DWORD PTR _i$[esp+16] mov edx, DWORD PTR ?g@@3HA mov ecx, DWORD PTR ?h@@3HA add edx, eax add ecx, eax mov DWORD PTR ?g@@3HA, edx mov DWORD PTR ?h@@3HA, ecx xor eax, eax add esp, 16 ret 0 |
sub esp, 8 lea ecx, DWORD PTR _j$[esp+8] lea edx, DWORD PTR _i$[esp+8] mov DWORD PTR _i$[esp+8], 0 mov DWORD PTR ?g@@3HA, 5 mov DWORD PTR ?h@@3HA, 6 call ?func@@YAXPAH0@Z mov DWORD PTR ?g@@3HA, 5 xor eax, eax add esp, 8 ret 0 |
濡傛灉鎮ㄩ潪甯歌揩鍒囩殑鎯充簡瑙T棰嗗煙鏈€鏂颁骇鍝佷笌鎶€鏈俊鎭紝閭d箞璁㈤槄鑷抽《缃戞妧鏈偖浠跺皢鏄偍鐨勬渶浣抽€斿緞涔嬩竴銆�