各位大侠,vc++6.0的工程里只能有一个main函数吗?

小弟刚学c++,在vc++6.0里新建了一个工程,然后在工程里新建了c++文件 ,输入一个简单的程序(含main函数),编译运行通过,然后再在这个工程下新建c++文件,再输入一个程序(也是含main函数的),编译通过但执行就出错了,上网搜索了下,说是一个工程只能有一个main函数,无奈之下,只能在同一个文件里用/*。。。*/注释符屏蔽掉已输入的程序,然后输入新的程序来执行,这样很麻烦啊。
因为小弟初学c++,想从书上多输入一些c++程序到电脑上看看运行结果,可是这些程序都含有main函数,这么说是不是这些程序不能放到同一个工程里了?难道没有什么办法解决这个问题吗?恳请各位c++大侠指点一下。
多谢了!

我的做法是:在vc++6.0里新建了一个工程,然后在工程里新建了c++文件 ,输入一个简单的程序(含main函数),编译运行通过,然后再在这个工程下新建c++文件,再输入一个程序(也是含main函数的),......以下接楼主这个地方:
在编好第2个程序(带main函数)之后,在工程左边的文件列表中,选中前一个带main函数的文件,点DEL键,将从工程中删除该文件。然后,执行VC菜单命令“组建”->“清除”,再按F7重新编译新建的C++程序。这样,每个cpp文件都留在当前工程所在目录中,而每次只有一个带main函数的cpp文件存在于工程当中。这样非常方便。
不清楚的话,可以hi我。追问

谢谢,小弟试了一下,感觉不错,另外想补充一下:虽然删除文件了,但还可以从工作区的fileview里工程下的source files点右键--添加文件到当前目录,把删除的文件导入进来,确实很方便,多谢ligang75!

追答

不错啊,举一反三了:)
如果你有一系列的带main的源文件(不是以工程的形式存放的),就可以把所有的例子文件都copy到你的一个工程文件夹下,想测试哪一个,就执行:“工程”->“增加到工程”->“文件”,然后选该文件。当然,微软为了让VC6跟Office2007兼容提供了filetool这个addin,能让我们通过工具栏按钮的方式快速添加源文件到当前工程中,即便不是为了兼容,也推荐使用!

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-25
上面的方法还可以!!我想说的是,有一些地方说得不是很准确!!第一:在一个工程里只能有一个main函数的源文件,所谓的只能有一个含main函数的源文件在工程中,实际上是说这个含main函数的源文件与这个工程建立了一种逻辑关系,不是硬盘上的那种文件之间的结构关系,也就是说这个源文件在硬盘中的位置,可以不在这个工程文件夹里。上面说的的删除文件不是真删除了,而是让这个含main函数的源文件与工程脱离那种逻辑关系。第二:为什么不能让一个工程与两个或者两个以上的含main的源文件建立逻辑关系??若存在这种情况,也就是上面的情况,在编译、连接其中一个含main的源文件时,会出现一个main函数在其他文件中被定义了多次的错误!!因为在一个工程里执行程序时,main函数代表入口地址(不懂的去查一下main的作用),这个工程里的其他文件、程序会被调用,但入口地址只有一个(学程序语言的一个常识)!! 所以只能有一个含main的源文件与一个工程建立逻辑关系,而其他含main的源文件与这个工程脱离逻辑关系即可,就像上面那样做的(在工程左边的文件列表(即工作区间下面的"FlieView ")中,选中前一个带main函数的源文件,点DEL键,将从工程中“删除”该文件)。追问

谢谢,你的回答让我对这个问题有更深的理解,呵呵,半年过去了,现在毕业设计就做VC++的,愈学愈觉得自己的浅薄。

追答

呵呵,哦,你大四了?!好的,预祝你毕业设计完美完成!。。。我接触程序语言不久,汇编,C丫,从最低层的学起,也懂得不多,自己也得努力!!

第2个回答  2011-08-10
有个方法,就是你不要写Mian函数,你想让让那个函数作main函数,就在工程->右键->属性->连接器->高级->入口点,在入口点中填入这个函数的名字,注意大小写,那么这个函数就是系统眼里main函数。这个设置方法是VC8,9 10DE 方法,6的设置方法也差不多,只是界面不同而已。追问

谢谢了,我用的vc6找不到连接器,不过小弟还是觉得这个办法不太方便。

第3个回答  2011-08-10
任何工程都只能有一个main函数,而且程序的执行都是从main函数开始的。追问

谢谢,那有没有解决我这个问题的办法吗?

第4个回答  2011-08-14
vc6.0是不行,要关闭软件重新运行。我以前用它也觉得挺麻烦,不过现在用VS2010,还可以,建议换个。
相似回答