【问题标题】:stdcall and cdecl stack alignment sizestdcall 和 cdecl 堆栈对齐大小
【发布时间】:2011-03-13 17:49:15
【问题描述】:

我有两个问题:

  1. stdcall 调用约定的堆栈对齐总是 4 字节,还是 32 位机器为 4,64 位机器为 8?
  2. cdecl 的堆栈对齐大小是多少?

我正在使用 Microsoft Visual Studio 2010。

【问题讨论】:

  • 我想补充一下:有没有办法获得对齐大小?例如sizeof(int) 总是有效吗?
  • 在 64 位 Windows 上没有 stdcall

标签: stack alignment stdcall cdecl


【解决方案1】:

stdcall 的堆栈对齐始终为 4 个字节。

cdecl 的堆栈对齐通常是参数的大小,但可能会受到编译器设置的影响。

【讨论】:

    猜你喜欢
    • 2013-11-13
    • 2016-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-14
    • 2015-01-08
    • 2021-03-26
    • 1970-01-01
    相关资源
    最近更新 更多