函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal)

时间:2020-09-30 16:06:12
【文件属性】:

文件名称:函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal)

文件大小:16KB

文件格式:DOCX

更新时间:2020-09-30 16:06:12

__cdecl __stdcall __fastcall __pascal)

函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal) 关于函数的调用规则(调用约定),大多数时候是不需要了解的,但是如果需要跨语言的编程,比如VC写的dll要delphi调用,则需要了解。 microsoft的vc默认的是__cdecl方式,而windows API则是__stdcall,如果用vc开发dll给其他语言用,则应该指定__stdcall方式。堆栈由谁清除这个很重要,如果是要写汇编函数给C调用,一定要小心堆栈的清除工作,如果是__cdecl方式的函数,则函数本身(如果不用汇编写)则不需要关心保存参数的堆栈的清除,但是如果是__stdcall的规则,一定要在函数退出(ret)前恢复堆栈。


网友评论