Presentation is loading. Please wait.

Presentation is loading. Please wait.

VC6.0 IDE的使用和程序调试技巧.

Similar presentations


Presentation on theme: "VC6.0 IDE的使用和程序调试技巧."— Presentation transcript:

1 VC6.0 IDE的使用和程序调试技巧

2 用C或C++进行项目开发的过程 编辑 工欲善其事, 必先利其器 编译 事半功倍 链接 调试与测试

3 VC++ 6.0集成开发环境简介 是Windows环境下最主要的应用开发系统之一 是C++语言的集成开发环境 与Win32紧密相连
强大的调试功能为大型复杂软件的开发提供了有效的排错手段。 包含源代码编辑器、资源编辑器、C/C++编译器、链接器、调试器,以及一套联机文档。使用Developer Studio,可以完成创建、编辑、编译、调试、运行应用程序等的各种操作。

4 启动VC++演示 Microsoft Visual Studio > Microsoft Visual C++ 6.0

5 在VC启动窗口中,取消“Tip of the Day”
单击,关闭对话框 单击,取消对勾 下次启动VC++,就不会再出现“Tip of the Day”对话框

6 开发环境 开发环境是程序员同VC++的交互界面 通过 它, 可以 创建工程文件 编辑资源 编译、链接、调试 编辑程序源代码

7 File 菜单 Edit 菜单 菜单简介 Insert菜单 View菜单 7

8 Project 菜单 Tools 菜单 Windows 菜单 Build 菜单
8

9 (1) VC++的菜单栏 --- File菜单 File->New->Files 9

10 File->New->Projects

11

12 (2) VC++的菜单栏 --- Edit菜单 (a) Breakpoints选项 位置断点 数据断点 消息断点 用来设置 删除和 查看断点
断点作用: 中断程序的执行过程,以便检查程序代码、变量和寄存器值 12

13 在位置断点中还可以设置断点条件,此时必须先指定位置,然后再设置条件断点
位置断点通常在源代码 的指定行、函数的开始 或指定的内存地址处设 置,当程序执行到指定 位置时,位置断点将中 断程序的执行 数据断点是在变量 或表达式上设置, 当变量或表达式的 值改变时,数据断 点将中断程序的执行 消息断点是在窗口 函数WndProc上设 置,当接收到指定 的消息时,消息断 点将中断程序的执行 在位置断点中还可以设置断点条件,此时必须先指定位置,然后再设置条件断点 13

14 利用此选项,可减轻输入代码的工作量。如在变量名之后键入“.”或“->”,系统就会自动显示所有有效的成员名供选择
(b) List Members选项 利用此选项,可减轻输入代码的工作量。如在变量名之后键入“.”或“->”,系统就会自动显示所有有效的成员名供选择 提供有效 的成员名 推荐使用功能更加强大的Visual Assist X插件! (c) Type Info选项 如果在源代码中将鼠标指针停在某一变量或函数上,那么系统将显示所指变量或函数等的语法 14

15 系统自动完成当前语句其余部分的输入。如果不能自动完成,则给出适当的提示辅助用户完成
(d) Parameter Info选项 当输入代码时,若在输入函数名之后键入左括号,系统将显示该函数的完整原型,并用黑体显示其第一个参数。输入第一个参数之后,接着就会出现第二个参数,依此类推 (e) Complete Word选项 系统自动完成当前语句其余部分的输入。如果不能自动完成,则给出适当的提示辅助用户完成 15

16

17 Insert菜单

18 (3) VC++的菜单栏 --- View菜单 (a) ClassWizard选项 View->ClassWizard选项
改变窗口 改变工具栏的显示方式 检查源代码 激活调试等 18

19 (b) Workspace选项 (c) Output选项 如果工作区没有显示或者不是处于当前状态,则选择该项将显示工作区窗口。
在输出窗口中显示程序建立过程(如编译、链接等)的有关信息或错误信息,并且显示调试运行时的输出结果。 19

20

21 (5) VC++的菜单栏 --- Project菜单
工程文件组合了一个应用程序的所有源文件的组成部分。工程文件包含在扩展名为.DSP的文件中。 21

22 (a) Set Active Project选项
设定指定的项目为工作区的活动项目 在该子菜单中可以进行如下操作: (1) New:创建新的文件; (2) New Folder:插入新的文件夹; (3) Files:插入已有文件; (b) Add To Project选项 选择该选项将打开一个级联子菜单通过级连子菜单,可以把文件、文件夹等添加到当前工程文件中 22

23

24 (6) V C++的菜单栏---Build菜单
(a) Compile选项 只编译当前文件而不调用链接器或其它工具。输出窗口将显示编译过程检查出的错误或警告信息,在错误信息处单击鼠标右键,可以得到错误代码的位置 (b) Build选项 对最后修改过的源文件进行编译和链接 (c) Rebuild All选项 该选项允许用户编译所有的源文件,而不管它们何时曾经被修改过 24

25 该选项能单步重新建立多个工程文件,并允许用户指定要建立的项目类型
(d) Batch Build选项 该选项能单步重新建立多个工程文件,并允许用户指定要建立的项目类型 Win32 Release(发行版)、Win32 Debug(调试版)。 VC提供了两种 应用程序类型 25

26 (e) Start Debug选项 单步执行程序, 从当前语句开始执 并在遇到函数调 行程序直到遇到断 用时进入函数内 点或遇到程序结束
部再从头单步执行 从当前语句开始执 行程序直到遇到断 点或遇到程序结束 使程序在运行到当前光 标所在位置时停止(相当 于设置一个临时断点) 调试过程中直 接进入到正在 运行的进程中 26

27

28 Tools 菜单

29 项目 Windows应用程序 文件 项目(VC对项目有良好的自动维护机制) 源代码、各类资源(如:菜单和对话框等 )、函数库
源文件.c/.cpp, 头文件.h, 库文件.lib/.dll,资源文件.rc 项目(VC对项目有良好的自动维护机制) 文件集合(以文件夹方式管理) 有效组织文件并维护各源文件之间的依赖关系 项目文件.dsp、项目工作区文件.dsw、项目工作区配置文件.opt、编译记录文件.plg、资源辅助文件.aps、无编译浏览文件.ncb等等。

30 项目工作区 项目工作区:用于描述用户当前工作状态的。 项目工作区窗口对项目进行各种管理。
比如打开了哪些文件、当前输入位置在什么地方这一类的信息被保存在工作区文件中,它在VC关闭的时候会自动保存。当用户下一次继续工作的时候,只需要打开这个工作区文件,就可以回到上一次关闭前的状态,而不需要再费心思回忆上一次到底在改哪一行代码了。 项目工作区窗口对项目进行各种管理。

31 项目工作区 项目工作区与项目 工作区与项目并不一定是一一对应的,一个工作区中也可以包含两个或多个项目。
但一般情况下,人们还是喜欢每次只在一个项目中进行工作,因此一个工作区中往往只有一个项目,或者说,每个项目往往都有与之对应的工作区; 正是如此,当我们想打开一个项目的时候,常用“打开工作区Open Workspace”菜单项打开这个项目文件夹中的工作区文件而不是使用“打开项目Open Project”。

32 项目工作区窗口 ClassView页 FileView页 ResourceView页

33 FileView页

34 ClassView页

35 File->New->Projects

36 项目类型 Win32 Application Win32 Console Application
基于WINDOWS平台的32位开发环境开发应用程序,SDK程序。 入口函数为WinMain Win32 Console Application 是基于DOS开发平台开发应用程序,不能使用与图形有关的函数,控制台程序。 入口函数是main 如果你编写传统的C程序,必须建立Win32 Console程序,但VC里面默认的是Win32 Application 。

37 创建新的项目工作区 在工作区中添加项目: VC以项目工作区 的形式来组织文件、 项目和项目配置 创建新的空工作区步骤:
(a) File->New->Workspaces-> 输入工作区名字并指定工作区目录 在工作区中添加项目: 用File->Open选项可打开已存在的项目;通过New对话框的Projects选项卡创建新的项目,并选择Add to current workspace复选框。 VC以项目工作区 的形式来组织文件、 项目和项目配置 37

38 项目工作区窗口简介 VC项目工作区由ClassView、ResourceView及FileView三个面板组成 38

39 联机帮助 VC帮助系统 主要提供五 个方面内容 VC Programmer`s Guide:VC程序员指南。
VC User`s Guide:VC用户指南。 VC Tutorials:VC教程。 MFC and Templates:微软基础类库和模板参考信息。 Languages and Libraries for VC:VC语言和库文件信息。 VC帮助系统 主要提供五 个方面内容 联机帮助 39

40 File->New->Project
VC6.0使用实例1 File->New->Project

41

42

43

44 File->New->Files

45

46

47 CTRL+F7 编译 编译成功

48 生成工程 相关文件

49 F7 链接 链接成功

50 F5 运行

51 运行程序 F5 :继续运行 F10 : 单步,不进入子函数内部 F11 : 单步,进入子函数内部 CTRL+F10: 运行到当前光标处
SHIFT+F11:跳出当前所在函数 Shift F5: 结束调试

52 项目配置 Project settings对话框 General Debug C/C++ Link 项目类型 release

53

54

55

56 使用VC++6.0调试程序 调试环境的建立

57 调试环境的建立

58 常用的调试手段 设置断点 控制程序运行 查看:Variable,memory, Register,堆栈

59 设置断点

60 断点设置 用来设置 删除和 查看断点 位置断点 数据断点 消息断点 断点作用:中断程序的执行过程,以便检查程序代码、变量和寄存器值 60

61 在位置断点中还可以设置断点条件,此时必须先指定位置,然后再设置条件断点
位置断点通常在源代码 的指定行、函数的开始 或指定的内存地址处设 置,当程序执行到指定 位置时,位置断点将中 断程序的执行 数据断点是在变量 或表达式上设置, 当变量或表达式的 值改变时,数据断 点将中断程序的执行 消息断点是在窗口 函数WndProc上设 置,当接收到指定 的消息时,消息断 点将中断程序的执行 在位置断点中还可以设置断点条件,此时必须先指定位置,然后再设置条件断点 61

62 控制程序的运行 F5 :继续运行 F10 : 单步,不进入子函数内部 F11 : 单步,进入子函数内部 CTRL+F10: 运行到当前光标处
SHIFT+F11:跳出当前所在函数 Shift F5: 结束调试

63 调试工具栏

64 实例2 1:打开jiecheng项目 (双击jiecheng.dsw文件) 2:build该项目,确定程序可以运行 3:调试运行阶乘程序
4:设置断点 5:再次调试运行程序 6:使用单步执行程序到结束

65 1:打开jiecheng项目

66 2:Build该项目,确定程序可以运行

67 3:调试运行阶乘程序 Go

68 4:设置断点 将鼠标停留在程序的第8行,在第8行的任意地方单击鼠标左键(第8行即“i = i*4;”)
在工具栏上选择 按钮,为第8行设置断点,以便让程序在此处暂停运行

69 5:再次调试运行阶乘程序 注意观察,现在调试运行程序会如何? Go

70 5:再次调试运行阶乘程序(续) 程序暂停之处 调试(Debug)工具: 控制程序前进步伐 查看程序当前状态

71 6:使用单步执行到程序结束 设置断点以后,调试运行程序时,程序开始执行,并且运行到断点处暂停下来,此时我们有机会观察程序的运行情况,并且诊断程序目前的状态是否如我们所预期的那样。 不过我们先不着急观察程序的状态,而是来看看如何控制程序的运行,以便在我们需要的时候让程序暂停下来,并且以我们需要的方式走走停停!

72 6:使用单步执行到程序结束 程序停下来了,如何让程序从暂停的地方继续向前执行? 方法是使用单步执行手段(Step Over)让程序向前走一步
停止调试 停止调试并重新启动调试 单步执行 当前位置

73 熟悉调试工具栏和菜单 (只在调试运行时出现)
对比调试运行时出现的 调试菜单“Debug”和调试 工具栏,根据图标查找 对应项

74 观察变量的值及其随程序运行时的变化情况 设置断点,调试运行程序,此时程序暂停在断点处等待 选择Debug菜单,找到
最后一项“Quick Watch” 并点击

75 点击Add Watch 输入想要观察的变量 变量名 变量的值

76 点击Add watch,看到如下画面

77 调试观察每一步骤变量i的值 点击单步执行按钮或者菜单,程序则向前单独运行一个步骤
每向前执行一步,就会暂停下来,这样我们就有充足的时间观察所关心的变量名称 观察变量i的值的情况

78 注意在调试过程中 断点不能设置在空白行上面 添加断点和删除断点的方法一样 一个程序中可以设置多个断点
按下F5键可以让程序从当前位置向前执行,直到遇见下一个断点或者程序结束


Download ppt "VC6.0 IDE的使用和程序调试技巧."

Similar presentations


Ads by Google