ac 函数中 WINAPI 标记的正确名称是什么?

Alb*_*ers 1 c tags winapi

我很难理解 WINAPI 标签相对于 c 的含义。

例如:

BOOL WINAPI CreateProcessA( ...);

这个 WINAPI 标签到底是什么,它是否有更正式的名称,它是 c 的一部分还是特定于实现的部分?

抱歉,如果我的问题有点令人困惑。

非常感谢!

Mar*_*nen 5

它是一个定义调用约定的宏,通常#define WINAPI __stdcall在 Windows 中。

  • 在 x86 中,区别在于 __stdcall 函数返回并在一条汇编语言指令中清理堆栈,而 __cdecl 函数只是返回,调用者必须在第二条指令中清理堆栈。这怎么会“极其”低效呢?看起来可能“更”高效。 (3认同)
  • @R.. __stdcall 是非标准的,这是不合逻辑的。这不是 C 中正常的做事方式也是不合逻辑的。然而,它是 Windows x86 上的标准调用约定,因此它的名称是相当合理的。 (3认同)