DLL函数调用规则
_cdecl
visual studio默認(rèn)的調(diào)用方式。將只能被C/C++調(diào)用。
輸出函數(shù)名前會(huì)有下劃線,比如_funtionName
_stdcall
windows api默認(rèn)的調(diào)用式方式。
__stdcall調(diào)用約定在輸出函數(shù)名前加上一個(gè)下劃線前綴,后面加上一個(gè)“@”符號(hào)和其參數(shù)的字節(jié)數(shù),格式為_functionname@number。如函數(shù)int func(int a, double b)的修飾名是_func@12。
_fastcall
__fastcall調(diào)用約定在輸出函數(shù)名前加上一個(gè)“@”符號(hào),后面也是一個(gè)“@”符號(hào)和其參數(shù)的字節(jié)數(shù),格式為@functionname@number
_pascal
這種規(guī)則從左向右傳遞參數(shù),通過EAX返回,堆棧由被調(diào)用者清除。并不常見
_thiscall
僅僅應(yīng)用于"C++"成員函數(shù),并不常見
總結(jié)
- 上一篇: Android NFC开发
- 下一篇: springsession使用redis