读书人

_stcall call conversation,该如何处理

发布时间: 2013-04-07 12:50:11 作者: rapoo

__stcall call conversation
请高手指点一下:
__stdcall是如何callee自动回收函数参数栈空间?这里的机制如何?希望从asm层面讨论问题,谢谢。
[解决办法]

引用:
你知道函数名加__的意思么

__stdcall是Mircosoft调用函数习惯之一,不是函数。
[解决办法]

int __stdcall foo(int)
{
return 0;
}

int __cdecl foo(int, int)
{
return 0;
}

int main()
{
foo(0);
foo(0,0);
return 0;
}




foo(0);
00A412A9 push 0
00A412AB call bar (0A4112Ch) //标准调用,出栈的代码又被调函数内部执行
foo(0,0);
00A412B0 push 0
00A412B2 push 0
00A412B4 call foo (0A41087h) //__cdecl,出栈的代码由调用函数负责
00A412B9 add esp,8 //出栈

读书人网 >C语言

热点推荐