函数调用方式:cdecl, stdcall, fastcall的区别

 时间:2026-04-22 15:11:11

C/C++语言有三种常用的调用方式,分别是cdecl(C的调用方式)、stdcall(pascal调用方式或者标准调用调用方式)、fastcall(快速调用方式)。

对于cdecl调用方式和stdcall调用方式,他们的压栈顺序都是从右到左的,fastcall调用方式,它是使用寄存器来传参的。

cdecl调用方式与stdcall调用方式最大的区别是,edecl调用方式是调用者清栈的,而stdcall调用方式是被调函数在函数调用结束的时候自己请栈的。所以使用不定参数的函数,比如printf,就只能使用cdecl的调用方式了,因为被调函数不知道传入了几个参数,所以不知道如何请栈,所以不能使用stdcall的调用方式。

  • 5月澳洲旅游攻略
  • 如何有效找到合适的实习工作?
  • 上路被对面三人越塔队友支援来不及我该怎么办
  • 拉巴斯生活旅游攻略(十):基督山
  • 英语三级ab听力打乱了吗
  • 热门搜索
    铃木雨燕怎么样 lol英雄名字大全 打油诗大全 眼睛浮肿怎么快速消除 少女漫画无翼鸟大全 汗斑怎么治疗最快 雍正皇帝简介 怎么看翡翠真假 净资产收益率怎么算 中国民用航空飞行学院怎么样