第2章vc编程环境简介

上传人:xzh****18 文档编号:46623563 上传时间:2018-06-27 格式:PDF 页数:9 大小:750.33KB
返回 下载 相关 举报
第2章vc编程环境简介_第1页
第1页 / 共9页
第2章vc编程环境简介_第2页
第2页 / 共9页
第2章vc编程环境简介_第3页
第3页 / 共9页
第2章vc编程环境简介_第4页
第4页 / 共9页
第2章vc编程环境简介_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《第2章vc编程环境简介》由会员分享,可在线阅读,更多相关《第2章vc编程环境简介(9页珍藏版)》请在金锄头文库上搜索。

1、第二章 VC 编程环境简介 第二章 VC 编程环境简介 2.1 Visual C+ 6.0 的开发环境 UG 的二次开发环境可以直接在 Visual C+6.0 下进行,由此可充分利用 Visual C+6.0 提供的编辑功能。本章简单介绍 Visual C+6.0 的编程环境。 2.1.1 VC+6.0 简介 Visual C+6.0(以下简称 VC6)包括了如下几个主要的部件: ? 编辑器(Editor) :用来输入、浏览以及修改 C+源代码; ? 编译器(Compilor) :用来将 C+源代码编译成目标代码; ? 链接程序(Linker) :用来链接目标代码和库模块以生成可执行文件;

2、? 库:提供一些预先编译好的模块,可以被包含进编写的程序中。Microsoft 基础类 库(MFC)是最重要的库,可以用它来编写运行在 Microsoft Windows 下的应用程 序。另外,标准 C+库支持输入/输出以及 C+语言的其他一些标准特征。 当然,微软开发者库(MSDN)也是使用 VC6 编程时不可缺少的助手。MSDN 是单独 安装的,并且微软会定期进行更新以更好的支持程序员。建议本书的读者也安装 MSDN。 VC6 的用户界面包括如下几个部分,如图 2-1 所示。 菜单区 工具栏 编辑窗口 输出窗口 项目工作区 图 2-1 VC6 界面布局示意图 ? 菜单区(Menu) :与一

3、般的应用程序一样,菜单区显示在最上方,所有系统提供的 功能都包括在各项菜单中; ? 工具栏区 (ToolBar) : 工具栏位于菜单区的正下方, 常用的操作工具栏都缺省出现,用户可以通过在工具栏区的右键菜单来定制工具栏; ? 项目工作区(Project WorkSpace) :显示在屏幕的左边,用来管理程序员生成的源 文件和各种类 (Class) 及其方法等。 其中包含了两个选项卡片: 类视图 (ClassView) 和文件视图(FileView) ; ? 编辑窗口(Editor) :编辑窗口显示在项目工作区的中间较大区域。可以用来显示和 编辑源代码; ? 输出窗口(Output) :输出窗口

4、显示在屏幕的正下方。它显示一些有关发出的命令 的进展信息、错误信息和结果的摘要等。输出窗口也被分成了若干选项卡,包括: 编译链接(Build) 、排错(Debug) 、查找结果(Find in Files) 、结果(Results)等。 2.1.2 VC6 项目的建立 在 VC6 中,以项目(Project)的形式来组织源代码和文件,VC6 可以建立 15 种类型的 项目。包括应用程序、动态链接库、各种控件等。与 UG 二次开发相关的项目类型有: ? MFC AppWizard(dll):MFC 支持的动态链接库。本质上是一个动态链接库,但是编 程时可以使用许多 MFC 支持的各种资源和高级功

5、能。在 UG NX 二次开发中,若 要使用 MFC 的一些高级功能,则需要建立此种类型的项目; ? Win32 Console Application:Win32 控制台应用程序,以 main 函数作为软件执行的 入口点。在编写 UG NX 外部程序时会使用此此类项目; ? Win32 Dynamic-link Library:Win32 动态链接库。与静态库不同,动态链接库只有 在其中的功能函数被调用时才会被加载到内存中。在编写 UG NX 内部程序时会使 用此类项目。 在 VC6 编程中,可以将多个项目组织成一个工作空间(WorkSpace) 。在编写大型复杂 软件时,以工作空间的形式来组

6、织会更加方便。若单独建立一个项目,则 VC6 会缺省创建 一个同名的工作空间。项目的扩展名为*.dsp,工作空间的扩展名为*.dsw。 启动 VC6 后,新建项目时,选择菜单【File】【New】 ,选择【Projects】选项卡,在 其中选择合适的项目类型,输入项目的基本信息,点击【OK】即可。 2.1.3 VC6 项目环境的设置 在建立项目之后, 还不能直接开始编写和调试程序, 首先要对项目的环境进行一些基本 设置。常见的设置功能分布在不同的菜单项中,如下所示。 ? 项目设置(Project Settings) 选择菜单【Project】【Settings】 ,出现“Project Set

7、tings”对话框,其中有若干项选项 卡。与本书相关的设置包括: (1)Debug 选项卡 其中可以设置调试 DLL 程序的启动应用程序。在用户调试 UG NX 内部程序时,由于 程序是动态链接库,不能直接启动,只能在 UG NX 中调用。则用户可以将“Executable for debug session ” 值 设 置 为 UG NX 的 启 动 程 序 , 例 如 “ C:Program FilesUGSNX 3.0UGIIugraf.exe” ,从而方便内部程序的调试。 (2)Link 选项卡 其中可以设置动态链接库文件的输出位置( “output file name: ” ) ;也

8、可以设置在链接时 所使用的外部库的名字( “Object/library modules: ” ) ,在编写 UG NX 二次开发程序时,必须 将几个 UG NX 二次开发相关的库包含进来,具体的库文件名可以参见本书第 3.2.2 节的内 容。 ? 编译模式选择 VC6 中有 2 种编译模式:调试(debug)模式和发布(release)模式。调试模式会在编译链接好的应用程序(*.exe)或动态链接库(*.dll)中增加许多调试用的额外信息,以方便 用户调试程序,去除语法错误和逻辑错误。当然此时生成的文件占用空间比较多,运行速度 也相对较慢。发布模式则对生成的文件进行了各种优化,当然也不包含各

9、种调试用信息,文 件占用空间少,运行速度较快。 读者在编写和调试程序时,应首先选择调试模式。在程序完成调试后,使用发布模式再 进行一遍编译和链接,之后再进行应用程序的发布。 选择菜单【Build】【Set Active Configuration】 ,在出现的对话框中选择合适的编译模 式后,点击【OK】即可。 ? 文件目录设置 VC6 在进行编译时,需要找到相应的头文件(*.h)和库文件(*.lib) ,查找原则是在项 目当前工作目录下查找,或是在系统指定的目录中查找。UG NX 二次开发程序中需要用到 许多头文件和库文件,这些文件的存放位置需要在项目中进行设置。 选择菜单【Tools】【Op

10、tions】 ,出现“Options”对话框,其中有若干选项卡,选择 “Directories”选项卡。在“Show directories for: ”下拉框中,选择“Include files” ,为头文 件指定查找目录;选择“Library files” ,为库文件指定查找目录。 与 UG NX 二次开发相关的头文件和库文件的查找目录设置方法参见本书的第 3.2.2 节 内容。 2.1.4 VC6 程序的编译 程序员编写的程序都以文本的方式存储在*.cpp 文件中或*.h 文件中, 这些程序不能直接 执行,需要编译和链接后才能生成可执行文件。编译(Compile)检查代码中的语法错误,生

11、 成的文件是目标文件 (*.obj) , 存放在项目目录的debug子目录或release子目录下。 链接(Link) 将各种目标库链接到程序文件中,生成的文件是可执行程序(*.exe)或动态链接库(*.dll) , 也存放在项目目录的 debug 子目录或 release 子目录下。 VC6 中完成编译和链接可以通过【Build】菜单下的如下几个子菜单功能完成: ? Compile 编译命令,将源代码文件编译成目标文件。VC6 有一定的智能功能,在编译时会根据 依赖关系, 比较相应的源代码文件和目标文件的修改时间, 若源代码文件的修改时间晚于目 标文件,则认为目标文件已过期,会重新编译生成目

12、标文件;若源代码文件的修改时间早于 目标文件,则说明目标文件仍然有效,不会编译相应的源代码文件。 ? Build 链接命令,将目标文件链接后生成可执行程序或动态链接库。链接也具有智能功能,即 也会根据可执行程序和目标文件的依赖关系以及修改时间的先后差异, 来判断是否进行新的 链接操作。当然,若程序没有进行编译,此命令也会首先启动编译命令,然后再进行链接。 ? Rebuild All 重新链接命令。 此命令忽略各文件的依赖关系和修改时间先后差异, 重新执行编译和链 接命令,以生成最新的可执行程序或动态链接库。 ? Batch Build 批量链接命令。 当某一个工作空间中包含多个项目时, 此命令

13、会依据各项目的依赖关系, 对工作空间中所包含的各个项目进行编译和链接。 在某种特殊的情况下,VC6 编译程序可能会死机,即 VC6 应用程序没有响应。若之前 用户没有保存其对代码的更改,则会造成损失。因此建议用户在编译程序之前,首先应保存 应用程序( 【File】【Save All】 ) 。 2.1.5 VC6 程序的运行 程序完成了编译链接后,如果没有语法错误,则会生成可执行文件,并在 VC6 的环境 下执行。 执行也可以分为 2 种模式, 正式执行和调试执行。 正式执行可以通过菜单项 【Build】 【Execute】或快捷键“Ctrl+F5”来激活,在此种模式下,程序从入口一直执行到结束

14、, 完成用户在代码中编写的各种功能; 而调试执行则可以允许用户执行到某一行、 单步执行等, 以消除代码中的逻辑错误,调试执行在下一小节详述。 2.1.6 VC6 程序的调试 用户编写完成的源代码中有可能存在 2 种错误,即语法错误和逻辑错误。 ? 语法错误 C 语言对程序的语法要求非常严格,编译过程会检查所有的源代码以消除语法错误。当 用户执行编译和链接时,VC6 会严格检查所有的源代码,并将源代码中出现的错误罗列在 输出窗口的“Build”选项卡中,其中的每一行对应一个错误。用户可以通过双击此窗口中 的某一行错误描述, 系统会在编辑窗口中自动定位到出错的代码处, 然后用户可以根据错误 描述进

15、行源代码更改。 在编译和链接过程中,会产生两种类型的信息,即错误(error)和警告(warning) 。错 误是必须被消除的,否则程序无法生成。而警告信息即使没有消除,VC6 也会产生应用程 序,程序也可以执行,但其中会包含很多隐患。建议用户在正式发布程序之前,将所有的警 告都处理掉。 常见的语法错误包括:变量未定义、变量重定义、数据类型错误、参数类型错误、函数 名错误、缺少分号( “; ” ) 、缺少大括号( “” 、 “” )等; 常见的警告包括:从未引用的变量定义、不合适的数据类型强制转换等。 链接中经常出现的错误是某个函数调用没有合适的库, 即此函数存在于另外的库中, 而 此库又没有

16、被包含进此工程中,所以链接时系统找不到。 ? 逻辑错误 当源程序编写完成,并通过了编译和链接后,并不能说明程序已经正确地完成了。通过 了编译和链接只能说明程序中没有了语法错误, 仍然有可能存在逻辑错误。 逻辑错误是指那 些完全符合语法规则,但却会对程序执行的正确性、执行效率、执行稳定性等产生不利影响 的语句或函数。 为了消除逻辑错误, 程序员可以将某一个中间过程变量的值显示出来, 从而逐步缩小逻 辑错误的定位范围,最终完成错误的定位和修改。在 VC6 中,程序员也可以使用排错模式, 跟踪到程序执行的内部,查看程序的执行分支情况、检查各个变量的值,从而定位逻辑错误 的位置并修改。 程序员可以通过如下 3 种方式进入排错模式。 (1)执行到断点 首先设置断点,在编辑窗口将光标放在源程序的某行(即程序运行到此停止的断点)代 码处,按快捷键“F9”来设置和取消断点,设置好的断点在编辑窗口的最左边有一个红色 的圆点提示。 选择菜单【Build

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号