调用约定收集

常见的函数调用约定;

VC6中的函数调用约定;


        调用约定        堆栈清除    参数传递 
           __cdecl         调用者      从右到左,通过堆栈传递 
         __stdcall         函数体      从右到左,通过堆栈传递
        __fastcall         函数体      从右到左,优先使用寄存器(ECX,EDX),然后使用堆栈
            thiscall         函数体      this指针默认通过ECX传递,其它参数从右到左入栈


__cdecl是C\C++的默认调用约定; VC的调用约定中并没有thiscall这个关键字,它是类成员函数默认调用约定;
C\C++中的main(或wmain)函数的调用约定必须是__cdecl,不允许更改;
默认调用约定一般能够通过编译器设置进行更改,如果你的代码依赖于调用约定,请明确指出需要使用的调用约定;

详细:http://www.sudu.cn/info/html/edu/20080403/261250.html

猜你喜欢

转载自blog.csdn.net/csp123258/article/details/17532275
今日推荐