我想调用一个返回struct
的函数,该函数具有__cdecl
调用约定。
__cdecl
调用约定如何返回struct
?
答案 0 :(得分:2)
没有统一的方法。
简单函数返回,如int
s在寄存器中返回,但没有一个调用约定,__cdecl
,__stdcall
等描述了struct
的准确性。返回。
structs
,即函数结果被编译为void
函数,为这样的struct
提供额外的指针参数。 我遇到了很大的问题 (返回struct
s的DLL函数)。事实上,不同的编译器使用不同的策略来返回struct
,甚至在同一平台上并使用相同的调用约定,这让我发出警告:永远不应该返回{{1例如,DLL函数。
更多信息: