实验1-5 用工作区组织工程

 实验目的:在VC6.0中利用工作区(workspace或工作空间)组织工程(project)。

实验内容:创建一个工作区,并在其中创建多个工程。

实验重难点:理解工作区的概念;分清工作区与工程的关系;明白何谓“活动工程”。

实验步骤:

/*************************************************************************

VC6.0中的工程用于组织程序,一个工程中可以包含多个源文件,但源文件中只能有一个main函数,通常可以由工程得到可执行文件。仔细观察实验1-1中的图2可知,在创建工程时,实际上已经创建了一个工作区。(注意工作区与工作空间仅是workspace的两种译法)

图1 新建工程时会自动创建一个工作区

由此可知,每个工程都属于一个工作区。在工程文件所在的文件夹中以.dsw(developer studio workspace)为扩展名的文件存放了工作区的信息,而.dsp(developer studio project) 为扩展名的文件存放了工程的信息。

文件菜单中的命令,如图2所示,仔细观察后发现VC6.0实际上是以工作空间(工作区)为“单位”来进行管理的。

图2 文件菜单中的命令

工作区有什么作用呢?顾名思义工作区是工作的区域。设想一下,正在编辑一个项目时因某种原因不得不停下,此时可能希望当下次工作时VC6.0能自动定位到中断的位置以便继续。如果如此,则有关项目的一些状态信息必须保存,如此时打开了项目中哪几个文件,当前的输入位置在什么地方等等。这些信息只是与工作有关的信息,不适合在项目文件中存储, 保存在工作区中是再恰当不过了。

在创建工程时也可以把它添加到当前工作区,显然可以单独创建一个工作区,而并非总是在创建工程时自动创建工作区。

***************************************************************************/

打开VC6.0,选择【文件(File)】|【新建(New)】菜单命令或按下快捷键(Ctrl+N),则弹出新建(New)对话框。单击“工作区”选项卡,如图3所示。

图3 “工作区”选项卡

2.单击图3中的“确定”按钮后,如图4所示。

图4 一个空白工作区

打开文件夹“F:\C语言程序示例\08141101”,如图5所示,观察所在生成的文件。

图5 新建一个工作区后生成的文件

思考:工作区意味着什么?

3. 选择【文件(File)】|【新建(New)】菜单命令或按下快捷键(Ctrl+N),则弹出新建(New)对话框,如图6所示。

图6 在工作区中创建工程

选择“添加到当前工作空间”,注意“位置”文本框中的变化,如图7所示。

图7 把工程“添加到当前工作空间”

4.创建一个名为test1的工程,且在test1工程中创建一个名为test1.c的源文件,如图8所示。

图8 包含一个名为test1工程的工作区

5.编译工程,运行程序,如图9所示。

图9 编译工程运行程序

此时与以前的创建工程时自动创建工作区的方式似乎没有区别,果真如此吗?

再次打开文件夹“F:\C语言程序示例\08141101”,如图10所示,观察变化。

图10 创建一个工程后文件夹的状态

思考:

先创建一个空白的工作区,再向其中添加工程的方式与以前的方式相比有何不同?怎么没有看到含有test1工程信息的文件test1.dsp?

6.回到vc6.0,再次选择【文件(File)】|【新建(New)】菜单命令或按下快捷键(Ctrl+N),则弹出新建(New)对话框,如图11所示。

图11 再见新建(New)对话框

单击“工程”选项卡,选择“添加到当前工作空间”,如图12所示。

图12再次选择“添加到当前工作空间”

接下来新建一个名为test2的工程,并向test2工程中创建一个名为test2.c的源文件,如图13所示。

图13 新建一个名为test2的工程

思考:

一个工作区中包含了两个工程,每个工程中有一个main函数,此时工作区中就有了两个main函数,再次编译时会出现错误吗?

7.按下快捷键Ctrl+F5编译,如图14所示。

图14 编译含有两个工程的工作区

通过观察可以发现,没有出错并且工程2被编译了。

思考:

1)  编译与工程和工作区的关系。

2)  工作区中有多个工程时哪个工程会被编译?

8.在工作区窗格的test1 files上单击鼠标右键,在弹出菜单中选择“设为活动工程”,如图15所示。

图15 把工程test1设为活动工程

此时似乎没有什么改变,如图16所示。

图16 工作区似乎没有改变

再次下快捷键Ctrl+F5编译,如图17所示。

图17 运行结果已经改变

工作区如旧,但编译后运行的却是由工程test1得到的程序,显然这次编译的是工程test1!

思考:

工作区、工程与编译的关系究竟如何?

9.再次打开文件夹“F:\C语言程序示例\08141101”,如图18所示,观察变化。

图18 包含了两个工程的工作区所在文件夹

思考:

工作区有什么作用?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值