baizy77 发表于 2018-9-4 10:32:31

C++老鸟日记007程序的基本结构

本帖最后由 baizy77 于 2018-10-1 20:45 编辑

版权声明---------------------------------------------------------------------------------------------------------------------该文章原创于Qter开源社区(www.qter.org),作者: 女儿叫老白 (白振勇)转载请注明出处!---------------------------------------------------------------------------------------------------------------------课程目录:《C++老鸟日记》目录本套课程属于:《C++跨平台开发干货》系列课程。-----------------------------------------------------------------------------引言-----------------------------------------------------------------------------       本节也是扫盲课程哦。
正文-----------------------------------------------------------------------------C++可执行程序(exe)的入口是main()函数,也就是说,我们用C++语言编写的任何可执行程序,都要具备main()函数。如果您使用MFC框架开发,那就不太一样了,因为MFC已经进行了封装,它提供的对外接口已经变成MFC自己的入口了。但是,实际上程序执行时最终调用的仍然是main()函数。当我们进行32位或64位编译时,如果将编译器的配置弄错了,则有可能导致出现找不到main()函数的编译错误,比如:error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用。这时候我们就要检查开发工具的配置,检查其中的开发环境是否配置有误。main()函数形式如下:int main(int argc, char * argv[])main()函数有两个参数,argc表示入口参数个数,argv是入口参数列表。比如我们开发了一个程序,名称为transfer.exe, 它负责将一个dat文件转换为xml文件,那么程序可能设计为如下的调用方式:transfer.exe   -i/usr/local/project/input.dat   -o /usr/local/project/out/output.xml这里就存在5个参数(包括transfer.exe),argv中保存了5个参数的列表,其中第一个是(transfer.exe的全路径名),后面4个依次为:       -i       /usr/local/project/input.dat   -o /usr/local/project/out/output.xml当我们开发命令行应用程序或者服务类程序时,经常会用到main()函数的入口参数。----------------------------------------------------------------* 参考资料:《C++编程思想》两卷合订本中文版(2.3.3章节),(美) BruceEckelChuck Allison著
页: [1]
查看完整版本: C++老鸟日记007程序的基本结构