2011-03-13 57 views
1

我有两个问题:STDCALL和CDECL堆栈对齐尺寸

  1. 是用于stdcall调用总是 4字节的堆栈对准,或者是它4为32位机和8为一个64位的机?
  2. cdecl的栈对齐大小是多少?

我使用Microsoft Visual Studio 2010

+0

取决于实现。 – Erik 2011-03-13 18:10:55

+0

更新了问题。 – Jin 2011-03-13 18:16:51

+0

我想补充一点:有没有办法获得对齐尺寸?例如sizeof(int)总是工作吗? – panzi 2011-06-18 18:20:43

回答

0

堆栈对齐方式stdcall始终是4个字节。

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