__stdcall和_stdcal有什么区别?

时间:2012-09-20 11:13:26

标签: visual-c++

__stdcall_stdcal之间有什么区别?什么是逻辑,通过放置_标记的变量计数器?

1 个答案:

答案 0 :(得分:8)

没有名为_stdcal的标识符或关键字。但是,MSVC编译器同时接受_stdcall__stdcall,一个或两个下划线。

单下划线是因为语言规范需要它。全局命名空间或非标准关键字中的供应商特定标识符必须以下划线为前缀。

双重下划线是因为供应商永远与程序员失去了战斗,他们认为他们应该在自己的代码中使用领先的下划线。同样出现在其他非标准关键字中,例如__interface__m128。在其他编译器中,例如gcc的__attribute__。显然,你会想要使用文档版本,两个下划线。