如何在vc工程中单独运行某个cpp文件??

sarnaga 2011-10-25 11:33:56
我的vc6.0中创建了一个worksapce

然后在里面创建了一个工程 名字叫“c语言学习”

为了方便,就在这个“c语言学习”工程下,创建了许多不同的cpp文件,比如有数组.cpp 变量.cpp


现在的问题是
每个CPP文件想单独执行,,因为每个cpp文件,我都写成 int main()这种形式,,编译能通过,但是运行的时候系统会告诉我 这个main()在其他文件中已经使用过了,只能把其他的cpp文件打开,把main()函数改个名字


想请问,如何才能单独的运行每一个cpp。

如果每一个cpp都单独创建一个工程,虽然能解决问题,,但是看起来过于零散。


...全文
575 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2011-10-25
  • 打赏
  • 举报
回复
工程中只用‘临时.cpp’
想用哪个就用对应‘哪个.cpp’覆盖‘临时.cpp’
cocoabird 2011-10-25
  • 打赏
  • 举报
回复
没得其它办法了
薛定谔之死猫 2011-10-25
  • 打赏
  • 举报
回复
用nmake加参数编译还差不多,ide没有那么智能
七擒关羽 2011-10-25
  • 打赏
  • 举报
回复
1.新建文件夹
2、把需要编译的CPP文件放入文件
3、用VC打开CPP文件编译

如果需要把所有的CPP在同一个工程调用
1、新建文件夹
2、把所有需要的CPP文件放入文件
3、删除所有main函数
4、建立H文件包含
5、建立新main函数调用
调试程序可以帮助了解程序是怎样运行的。 1、如何快速地规范代码缩进格式 选所需要规范的代码,按shift+F8 2、如何在Release状态下进行调试 Project->Setting…->Project Settings对话框,选择Release状态。“C/C++”标签页的Category选General,Optimizations选Disable(Debug),Debug info选Program Database。在“Link”标签页Generate debug info复选框。 注:只是一个介乎Debug和Release的间状态,所有的ASSERT、VERIFY都不起作用,函数调用方式已经是真正的调用,而不查表,但是这种状态下QuickWatch、调用队列跟踪功能仍然有效,和Debug版一样。 3、Release和Debug有什么不同。 Release版称为发行版,Debug版称为调试版。 Debug可以单步执行、跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢。Release版运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能。 Release的exe文件链接的是标准的MFC DLL(Use MFC in a shared or static dll),比如MFC42.DLL。这些DLL在安装Windows的时候,已经配置,所以这些程序能够在没有安装Visual C++ 6.0的机器上运行。而Debug版本的exe链接了调试版本的MFC DLL文件,如MFC42D.DLL。在没有安装Visual C++6.0的机器上不能运行,因为缺MFC42D.DLL等,除非选择use static dll when link。 4、ASSERT和VERIFY有什么区别 ASSERT里面的内容在Release版本不编译,VERIFY里面的内容仍然编译,但不再判断真假。所以后者更安全一点。 例如ASSERT(file.Open(strFileName)),一旦到了Release版本,这一行就忽略了,file根本就不Open()了,而且没有任何出错的信息。如果用VERIFY()就不会有这个问题。 5、Workspace和Project之间是什么样的关系 每个Workspace可以包括几个project,但只有一个处于Active状态,各个project之间可以有依赖关系,在project的Setting…可以设定,比如那个Active状态的project可以依赖于其他的提供其函数调用的静态库。 6、如何在非MFC程序使用ClassWizard 在工程目录下新建一个空的.RC文件,然后加入到工程就可以了。 7、如何设置断点 按F9在当前光标处增加一个断点和取消一个断点。 另外,在编辑状态下,按Ctrl+B组合键,弹出断点设置对话框。然后单击【Condition…】按钮弹出设置断点条件的对话框进行设置。 8、在编辑状态下发现成员变量或函数不能显示提示,如何打开显示功能 这似乎是目前这个Visual C++ 6.0版本的一个bug,可按如下步骤使其正常,如再出现,可如法炮制: (1)关闭Project,(2)删除“工程名.ncb”文件,(3)重新打开工程
代码静态分析工具PC-LINT安装配置 PC-Lint是C/C++软件代码静态分析工具,你可以把它看作是一种更加严格的编译器。它不仅可以检查出一般的语法错误,还可以检查出那些虽然符合语法要求但不易发现的潜在错误。 C语言的灵活性带来了代码效率的提升,但相应带来了代码编写的随意性,另外C编译器不进行强制类型检查,也带来了代码编写的隐患。PCLint识别并报告C语言的编程陷阱和格式缺陷的发生。它进行程序的全局分析,能识别没有被适当检验的数组下标,报告未被初始化的变量,警告使用空指针,冗余的代码,等等。软件除错是软件项目开发成本和延误的主要因素。PClint能够帮你在程序动态测试之前发现编码错误。这样消除错误的成本更低。 使用PC-Lint在代码走读和单元测试之前进行检查,可以提前发现程序隐藏错误,提高代码质量,节省测试时间。并提供编码规则检查,规范软件人员的编码行为。 由于PC-LINT对于一般程序员来说可能比较陌生,有好多人安装了也不知道怎样配置和使用。 下面我就根据自己的安装和配置心得对PC-Lint的安装、配置及使用进行下详细说明.本人主要介绍了将PC-Lint集成到VC++6.0和SourceInsight的方法和步骤。 (一)Windows下C/C++开发工具VC6使用较为普遍,因此这里先讲下VC6.0环境集成pclint的步骤. 首先, 当然要下载软件,正版软件要200多$呢,买不起!所以只好网上找免费的拉。从http://www.61ic.com/down/othe/pclint.rar处可以下载到一个8.0版本的pclint. 1.将pclint.rar解压至c:\, 这样lint文件就位与c:\pclint(安装目录)下了。 2.将c:\pclint\lnt 下的3个文件lib-w32.lnt,env-vc6.lnt,co-msc60.lnt拷贝至c:\pclint下, 再在安装目录下创建std.lnt和options.lnt两个文件,其std.lnt的内容如下 // contents of std.lnt c:\pclint\co-msc60.lnt c:\pclint\lib-w32.lnt c:\pclint\options.lnt -si4 -sp4 -i"D:\Program Files;D:\Program Files\Microsoft Visual Studio\VC98\Include" //end 其-i后面的路径名为VC的安装路径和VC Include 文件路径,根据自己的修改便可。 options.lnt 内容可为空,为定制内容,以后需要时再添加。 准备工作做完了,下一步就是要将pclint集成到VC6去,先配置lint使之能对单个C或C++文件进行检查。 1.打开VC6,tools--->customize-->tools 新建一个名为pclint的项,在下面填入 command: C:\pclint\lint-nt.exe arguments: -u c:\pclint\std.lnt c:\pclint\env-vc6.lnt "$(FilePath)" Use Output Window 打上勾 close 完成。 这个在你VC窗口tools菜单下应该多了一个pclint选项,可以用它来运行lint程序,对你的c/c++代码进行静态检查了。 现在就可以用个小程序测试一下pclint了 //test1.cpp #include class X { int *p; public: X() { p = new int[20]; } void init() { memset( p, 20, 'a' ); } ~X() { delete p; } }; 编译这个文件,看下你的编译器给你多少警告,再运行下lint, 可以自己对比一下。 我的机器上,VC产生0 errors 0 warnings, 而lint程序产生了如下8条警告信息,有些还是很有用处的提示,这里就不一一分析了. test.cpp(12): error 783: (Info -- Line does not end with new-line) test.cpp(7): error 1732: (Info -- new in constructor for class 'X' which has no assignment operator) test.cpp(7): error 1733: (Info -- new in constructor for class 'X' which has no copy constru

24,856

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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