程序调试 第 6章
? 程序调试的基本概念
? 程序调试
? 小结
? 习题与上机
程序调试的基本概念
在程序设计的过程中,不可避免地会发
生错误。程序调试就是查找,修正,排除隐藏
的错误。
VB提供了很强的程序调试的手段。
? 错误类型
? VB调试工具
6.1
错误类型
VB的错误通常可分作三类:
? 第一类错误是语法错误
? 第二类错误是运行错误
? 第三类错误是逻辑错误
6.1.1
语法错误
? 语法错误是指由于 违反 了语言有关语句
形式或使用规则而产生的错误。
? VB提供了一个 自动语法检查 选项,在输
入代码时自动检测和改正语法错误。
? 在编辑源程序或编译时检测出
? 等级考试的上机试题 …,
运行错误
? 运行错误是由于试图执行一个不可进行的
操作而引起的。比如引用一个不存在的对
象或使用一个某些关键属性没有正确设置
的对象等。
? 对于运行错误,系统也会在检测到后,给
出相应的错误信息,并中止程序的运行。
? 在程序运行时检测出
逻辑错误
? 逻辑错误是由于不能实现预定算法的功能
而产生的错误。尽管没有语法错误,也没
有运行错误,但得到的结果却是错的。
? 逻辑错误也有可能引起运行错误。
? 系统无法自动检测出逻辑错误。只能由用
户通过 VB的 调试工具, 动态的监控 程序执
行情况,发现逻辑错误。
VB调试工具
? 设置自动语法检查
? VB调试工具
6.1.2
设置自动语法检查
在 VB集成开发环
境中,打开, 工具,
菜单,再单击, 选项,
命令,并在打开的对
话框中选择, 编辑器,
标签(右图),在
,代码设置, 栏中选
中, 自动语法检测,
即可。
VB调试工具
? 在任何工具栏上单击鼠标右键,在弹出式菜单中
单击, 调试, 即可。
? 可利用按钮运行要测试的程序、中断程序运行、
在程序中设置断点、监视变量(取值)、单步调
试、过程跟踪等,以查找并排除代码中存在的逻
辑错误。
? 各个按钮的功能 P119
如何使用
程序调试
? 中断状态的进入与退出
? 使用调试窗口
? 断点设置及单步调试
6.2
中断状态的进入与退出
程序在执行的中途被停止,称为, 中断, 。进入
中断状态一般有以下四种方式:
1.发生 运行错误 而进入中断状态;
2.用户单击 Ctrl+Break键或使用, Run”(运行)菜
单中的, 中断, 命令而进入中断状态;
3.当程序 执行到断点 处时而进入中断状态;
4.在采用 单步调试 方式每运行一个可执行代码行后,
通过使用, 运行, 菜单中的, 继续, 命令,,结
束, 命令或, 重新启动, 命令,可退出中断状态。
6.2.1
使用调试窗口
Visual Basic6.0提供了三种用于调试的窗
口:本地窗口、立即窗口和监视窗口。在
程序进入中断状态后,在调试工具栏中可
打开任意一个调试窗口。
?本地窗口
?监视窗口
?立即窗口
6.2.2
本地窗口
? 本地窗口可显示当前过程所有局部变量的
当前值( 图 6-4)。
? 第一行的 Me表示当前窗体,
( 图 6-5)可查看各个属性的当前值。
图 6-4
图 6-5
监视窗口
? 监视窗口用于查看指定表达式的值。可使
用, 调试, 菜单中的, 添加监视, 命令指
定或修改, 监视表达式, 。 (图 6-6)。
? 启动程序运行,当程序运行被中断时,单
击调试工具栏上的, 监视窗口, 按钮,从
监视窗口中看到监视表达式(或变量)的
当前值( 图 6-7)。
图 6-6
图 6-7
立即窗口
? 立即窗口用于显示当前过程中的有关信息。
? 在 程序 中使用 Debug.Print A,B+C 语句 ;
将它们的值输出到立即窗口;
? 在 立即窗口 直接使用 print语句:
Print p1<s>p2<s> 。
? 回顾验证函数的实验?
? 示例程序 (求 5!) 效果
示例程序
? 例如在立即窗口显示下面程序的运行结果
( 图 6-8) Private Sub Form_Click()
Dim p As Integer
p = 1
For i = 1 To 5
p = p * i
Debug.Print str$(i);"!=";p
Next i
End Sub
图 6-8
断点设置及单步调试
? 断点设置和取消(现场演示)
? 中断后如何检查中间变量的值
? 单步语句调试
? 单步过程调试
6.2.3
单步语句调试
每执行完一个语句,就发生中断,因此
可逐个语句检查每个语句的执行状况。
如需对某个过程实行单步调试,可使用
,调试, 菜单中的, 逐语句, 命令或单击调
试工具栏上的, 逐语句, 单步过程调试按钮。
单步过程调试
? 当可以确认某些过程不存在错误时,则不
必对该过程再进行单步语句调试,而可直
接执行整个过程,这就是单步过程调试。
? 如需对某个过程实行单步调试,可使用
,调试, 菜单中的, 逐过程, 命令或单击
调试工具栏上的, 逐过程, 单步过程调试
按钮。
本章小结
? 程序调试的基本概念与方法
? 三种错误类型
? 中断的概念,设置断点的程序调试方

? 如何静态与动态的检查程序中的错误
? 上机调试程序的能力所在 !
习题与上机
? 教科书 P123,
1,2,4,5,6
? 上机,
1、检查自己以前程序中的错误
2、实验书 P73
实验 9--1;实验 9--2
学习第五章数组后,再做实验 9--3