哪种退货类型? (C ++ | Win32)

时间:2013-11-21 20:23:15

标签: c++ winapi definition return-type

我有一个简单的问题。 “WINAPI”在以下定义中的含义是什么:

int WINAPI WinMain ();

我认为返回类型是int而函数 name 是WinMain,但我无法弄清楚,在这种情况下“WINAPI”的意思。

谢谢:)

3 个答案:

答案 0 :(得分:1)

这里解释:

http://msdn.microsoft.com/en-us/library/windows/desktop/ff381406(v=vs.85).aspx

  

WINAPI是调用约定。调用约定定义函数如何从调用者接收参数。例如,它定义参数在堆栈中出现的顺序。

答案 1 :(得分:1)

这是一个宏,用于指定函数的调用约定。

Microsoft documentation将其定义为:

#define WINAPI __stdcall

__stdcall的含义记录为here

答案 2 :(得分:1)

它已经回答here

  

使用所谓的cdecl编译典型的c调用。在cdecl中   调用者清理堆栈上推送的参数。

     

WINAPI,也称为“标准调用”,表示被调用的函数   负责清理其论点堆栈。

     

MS编译器将使用_前缀cdecl调用,而WINAPI获取   一个前导_并获得一个@ {BYTES-NEEDED}前置于函数名称   当它破坏了函数名称时。