美文网首页
常见函数调用约定

常见函数调用约定

作者: bigworld_c | 来源:发表于2017-08-01 14:51 被阅读0次

_cdecl

  • 传参顺序:从右到左
  • 参数栈维护:调用者

__stdcall

  • 传参顺序:从右到左
  • 参数栈维护:被调用者

__fastcall

  • 通过寄存器来传参
  • 传参顺序:优先使用ECX/EDX 寄存器传递前两个参数,剩下的采用从右到左压栈
  • 参数栈维护:被调用者

__thiscall

  • 仅用于C++成员函数
  • 传参顺序:this 指针通过 exc 寄存器,参数从右到左压栈

naked call

  • 不会在函数入口出口保存与恢复 eip 等寄存器

相关文章

  • 常见函数调用约定

    _cdecl 传参顺序:从右到左 参数栈维护:调用者 __stdcall 传参顺序:从右到左 参数栈维护:被调用者...

  • C语言22 调用约定和函数指针

    C语言22 调用约定和函数指针 函数调用约定 就是告诉编译器:怎么传递参数,怎么传递返回值,怎么平衡堆栈 常见的几...

  • C函数的调用过程

    函数调用过程 当主函数调用子函数的时候: 在主函数中,将子函数的参数按照一定调用约定(参考调用约定),一般是从右向...

  • 函数调用约定

    援引《C++ Primer(Fifth Edition)》4.1.3节: Order of operand eva...

  • 函数调用约定

    函数调用约定 在C语言中,假设我们有这样的一个函数: int function(int a,int b) 调用时只...

  • 函数调用约定

    1. c调用约定 _cdecl 调用方将参数从右面到左压栈,被调用函数完成后,调用方负责从栈中清除参数。 2. s...

  • 函数调用约定

    最近在研究反汇编相关的东西,看到了一些汇编中函数调用的约定,顺便记录下来。 cdeclx86体系结构的许多C编译器...

  • 11-27函数

    函数 函数的重点是识别调用约定、参数类型和返回值类型 调用约定: cdecl调用方平栈 stdcall被调用方平栈...

  • 各主流处理器与系统平台的ABI和函数调用约定

    System V ABI AMD64在System V ABI上的函数调用约定 MSVC上x64模式的函数调用约定...

  • 函数的调用约定

    __cdecl __stdcall

网友评论

      本文标题:常见函数调用约定

      本文链接:https://www.haomeiwen.com/subject/jvujlxtx.html