今天突然看到_tmain,觉得好陌生,不知道是什么意思,于是查找资料,下面的讲解的很详细,所以转帖来加深自己的印象,也分享给更多的人。原文网址为:http://blog.csdn.net/hellojl/article/details/3080118

用过C言语的人都知道每一个C的程序都会有一个main函数, 但有时看别人写的程序却出现了_tmain,会感动很困惑。 我当时也是很困惑,于是上网找资料看。

现在将我得到的结果总结一下。因为并没有什么根据, 如果有误。欢迎指正:_tmain与main的区别

1。main是C程序的函数,_tmain是main为了支持unicode所使用的main的別名
2。 _tmain的定义在<tchar.h>可以找到,如#define _tmain main,所以要加#i nclude <tchar.h>才能用。
_tmain()是个宏,如果是UNICODE则他是wmain()否则他是main()

3。因此_tmain compile后仍为main,所以都可以执行
main()是WINDOWS的控制台程序(32BIT)或DOS程序(16BIT),  
  WinMain()是WINDOWS的GUI程序,  
  wmain()是UNICODE版本的main(),  
  _tmain()是个宏,如果是UNICODE则他是wmain()否则他是main()
另外,wmain也是main的另一個别名,是为了支持二个字节的语言环境
-----------------------
int main( int argc[ , char *argv[ ] [, char *envp[ ] ] ] );
wmain( int argc, wchar_t *argv[ ], wchar_t *envp[ ] )
int _tmain(int argc, _TCHAR* argv[])

_tmain与main,winMain,wmain相关推荐

  1. _tmain与main,winMain,wmain收藏

    用过C言语的人都知道每一个C的程序都会有一个main函数, 但有时看别人写的程序却出现了_tmain,会感动很困惑. 我当时也是很困惑,于是上网找资料看. 现在将我得到的结果总结一下.因为并没有什么根 ...

  2. 浅析_tmain()与main()的区别

    _tmain()是为了支持unicode所使用的main一个别名,既然是别名,应该有宏定义过的,在哪里定义的呢?就在那个让你困惑的<stdafx.h>里 有这么两行 #include &l ...

  3. _tmain和main

    Main是所有c或c++的程序执行的起点,_tmain是main为了支持unicode所使用的main的别名 ._tmain()不过是unicode版本的的main() . _tmain需要一个返回值 ...

  4. C语言winmain函数的参数,c++:谁调用了main/WinMain函数!

    c++:谁调用了main/WinMain函数! (2010-09-28 15:29:54) 标签: it main和WinMain函数都被操作系统调用! WinMain函数的四个参数由操作系统传递过来 ...

  5. 主函数 main WinMain _tmain _tWinMain 的区别

    From: http://blog.csdn.net/zhangxinrun/article/details/5781451 main是C/C++的标准入口函数名 WinMain是windows AP ...

  6. VC2005 C++入门记

    _tmain.main .wmain and wWinmain 区别 main()是WINDOWS的控制台程序(32BIT)或DOS程序(16BIT),     WinMain()是WINDOWS的G ...

  7. [转载]_tmain main wmain WinMain

    在visual c++ 2008 中,当选择编辑一个32位Win32控制台应用程序时. 初始状态下系统自带函数: int _tmain(int argc, _TCHAR* argv[]) {      ...

  8. main,tmain,winmain()等函数——UNICODE - sensensen - 博客园

    最近使用Visual Studio 2008 发现 入口函数为_tmain,google一下,得解: 1.main是C程序的函数,_tmain是main为了支持unicode所使用的main的別名 2 ...

  9. main函数第3个参数envp装的是什么(envp:环境变量)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/btwsmile/article/det ...

最新文章

  1. k8s系列----一个简单的例子
  2. 英语面试简短问题_用简单的英语解释产品设计
  3. Electron中实现菜单、子菜单、以及自带操作事件
  4. java 堆转储快照_捕获Java堆转储的7个选项
  5. jupyter notebook python怎么设置_jupyter notebook 的工作空间设置操作
  6. 一段比较经典的多线程学习代码
  7. merge r语言daframe_R语言:数据框
  8. android卡片 弹簧滑动,一种通用式弹簧卡扣的制作方法
  9. RHEL7挂载本地yum源
  10. 卷积神经网络之OverFeat(2014)
  11. 修改计算机用户名bat脚本
  12. 停止mysql服务的运行_启动和停止MySQL服务
  13. android开发之Android 5.0 Lollipop新特性介绍
  14. GCMail反垃圾邮件系统让企业远离垃圾邮件的困饶
  15. 公钥,私钥 和数字证书
  16. 树莓派配置文件 config.txt - HDMI 热插拔
  17. matlab画y等于x平方,如何用matlab画Y=X^2的图啊?
  18. 自控重点整理1.1 比例微分PD控制器的作用
  19. POI 导出Excel
  20. 编译原理——非确定有限自动机(三)

热门文章

  1. vue3子组件修改父组件值,vue3 子组件修改属性
  2. AntDB入选《爱分析:2022数据智能厂商全景报告》
  3. 新闻源推广找新闻源发布平台还是新闻营销公司?
  4. 如何修改页面呈现哀悼模式?
  5. hybird架构之离线缓存
  6. 帝国cmssitemap.php,帝国CMS如何自动生成sitemap.xml网站地图
  7. Python: Python 多版本管理
  8. Android中的URI 和Uri
  9. 文献阅读-区块链技术与应用前瞻综述
  10. 三孔插头三根线的区分