关于WinMain函数的问题

nikeyes 2005-08-19 10:37:02
int PASCAL WinMain
int WINAPI WinMain
int APIENTRY WinMain

都能成功通过,不知这三个有何分别?
...全文
113 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
南安风语者 2006-06-14
  • 打赏
  • 举报
回复
WINAPI ,PASCAL,CALLBACK,_stdcall 这几个是一致的
C和C++缺省调用方式是__cdecl
WINAPI一般用于修饰动态链接库中导出函数
CALLBACK仅用于修饰回调函数

那么cdecl、pascal、stdcall、fastcall等修饰符号到底什么意思呢?
非常简单,就是关于堆栈的一些说明,首先是函数参数压栈顺序,其次是
压入堆栈的内容由谁来清除,调用者还是函数自己?
这些开关用来告诉编译器产生什么样的汇编代码。
呵呵,这也是我刚从另人进里看到的
http://community.csdn.net/Expert/topic/4707/4707185.xml?temp=.4374964
wygss_18 2005-08-19
  • 打赏
  • 举报
回复
都 = _stdcall
nikeyes 2005-08-19
  • 打赏
  • 举报
回复
那么在使用上有什么分别?
duyhui 2005-08-19
  • 打赏
  • 举报
回复
WINAPI的宏定义是 FAR PASCAL, APIENTRY的宏定义就是 WINAPI
hj008 2005-08-19
  • 打赏
  • 举报
回复
这么跟你讲吧,在定义的时候.
#define APIENTRY WINAPI
#define WINAPI __stdcall
#define PASCAL __stdcall

这样你总明白了吧.其实都是一样的,只不过是换了个写法.

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧