gpt4 book ai didi

c - 结合 C 和 x86 程序集时假定调用约定

转载 作者:太空狗 更新时间:2023-10-29 15:36:37 28 4
gpt4 key购买 nike

我有一些由 C 函数调用并从中获取参数的汇编例程。现在,我假设这些参数是按 cdecl 顺序在堆栈上传递的。这样的假设是否合理?

编译器 (GCC) 会检测到这一点并确保正确传递参数,还是我应该手动去声明它们 cdecl?如果是这样,如果我指定更高的优化级别,该属性是否仍然有效?

最佳答案

调用约定不仅仅意味着参数排序。有一个很好的 pdf 解释了所有细节,由 Agner Fog 撰写:Calling conventions for different C++ compilers and operating systems .

关于c - 结合 C 和 x86 程序集时假定调用约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9344561/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com