200 likes | 291 Views
第六章 VB 程序调试. 教学要求 了解程序中可能出现的三种错误 掌握设置自动语法检查的方法 了解各调试按钮的功能 掌握调试窗口的使用 掌握断点的设置及单步调试. 教学内容. 6.1 程序调试的基本概念 6.1.1 错误类型 6.1.2 VB 调试工具 6.2 程序调试 6.2.1 中断状态的进入与退出 6.2.2 使用调试窗口 6.2.3 断点设置及单步调试. 6 .1 程序调试的基本概念 在程序设计的过程中,不可避免地会发生错误。 程序调试 就是对程序进行测试,查找程序中隐 藏的错误并将这些错误修正或排除。 .
E N D
教学要求 • 了解程序中可能出现的三种错误 • 掌握设置自动语法检查的方法 • 了解各调试按钮的功能 • 掌握调试窗口的使用 • 掌握断点的设置及单步调试 2
教学内容 • 6.1 程序调试的基本概念 • 6.1.1 错误类型 • 6.1.2 VB调试工具 • 6.2 程序调试 • 6.2.1 中断状态的进入与退出 • 6.2.2 使用调试窗口 • 6.2.3 断点设置及单步调试 3
6 .1 程序调试的基本概念 在程序设计的过程中,不可避免地会发生错误。 程序调试 就是对程序进行测试,查找程序中隐 藏的错误并将这些错误修正或排除。 4
6.1.1 错误类型 程序中出现的三种错误 --语法错误 违反了语言有关语句形式或使用规则而产生的错误。 --运行错误 运行错误是由于试图执行一个不可进行的操作而引起的。 --逻辑错误 编写的程序代码,不能实现预定的处理功能要求而产生的错误。 5
对于逻辑错误,系统无法自动检测。只能由用户通过测试,来验证结果的正确性。如果结果有误,则应检查是否有逻辑错误存在,并加以排除。对于逻辑错误,系统无法自动检测。只能由用户通过测试,来验证结果的正确性。如果结果有误,则应检查是否有逻辑错误存在,并加以排除。 Private Sub Command1_Click() Dim Time As Integer Time = 5 Do While Time >= 1 Print Time Loop End Sub Private Sub Command2_Click() Dim i As Integer, s As Integer s = 1 For i = 1 To 10 s = s * i Next i Print s End Sub long Time=Time-1 出现死循环,循环变量没有发生变化 超出整型数范围,发生溢出。 6
6.1.2 VB调试工具 • 1、设置自动语法检查 • 设置自动语法检查的方法是: • “工具”——“选项”——“编辑器”——“代码设置”栏中选中“自动语法检测”即可。 7
2、VB调试工具 使用调试工具,可便捷有效地检查逻辑错误产生的地点和原因。 VB 提供了一个专用于程序调试的工具栏。 P119 表6-1 逐语句 逐过程 跳出 切换断点 本地窗口 立即窗口 监视窗口 快速监视 启动 中断 结束 8
6.2 程序调试 6.2.1 中断状态的进入与退出 程序在执行的中途被停止,称为“中断”。 在中断状态,用户可以查看各个变量及属性的当前值,了解程序执行是否正常。可以修改发生错误的程序代码、观察应用界面的状况、修改变量及属性值、修改程序的流程等等。 9
进入中断状态的几种情况 1. 程序在运行中,由于发生错误而进入中断状态; 2. 程序在运行中,因为用户单击Ctrl+Break键或使用“Run”(运行)菜单中的“中断”命令而进入中断状态; 3. 由于用户使用创建断点命令在程序代码中设置了断点,当程序执行到断点处时而进入中断状态; 4. 在采用单步调试方式每运行一个可执行代码行后,即进入中断状态; 10
6.2.2 使用调试窗口 VB提供了三种用于调试的窗口: 本地窗口、立即窗口和监视窗口。 在程序进入中断状态后,首先调出调试工具栏,在调试工具栏中单击相应的按钮,即可打开任意一个调试窗口。 11
1、本地窗口 本地窗口可显示当前过程所有局部变量的当前值. 第一行的Me表示当前窗体,用鼠标单击Me前的加号,将打开窗体及窗体中各个控件对象的属性“树”,即可查看各个属性的当前值。 12
2、监视窗口 监视窗口用于查看指定表达式的值。 指定的表达式称为“监视表达式”。 “调试”——“添加监视”命令/“编辑监视”命令来指定或修改“监视表达式”。 13
3、立即窗口 立即窗口用于显示当前过程中的有关信息。 (1)、通过在程序代码行中使用如下方法: Debug.Print p1<s>p2<s>… (2)也可以在立即窗口直接使用: Print p1<s>p2<s>… 输出有关变量或属性的值。 (注:此时Print 可用 ?替代) 14
6.2.3 断点设置及单步调试 • 在程序中设置断点,是检查并排除逻辑错误和比较复杂的运行错误的重要手段。 • 1、断点设置和取消 • “断点”通常按排在程序代码中能反映程序执行状况的部位。 • 设置断点 • 取消断点 15
在VB程序中设置断点: • 打开代码窗口,将光标指向打算作为断点的代码行 • 使用“调试”菜单中的“切换断点”命令或直接单击调试工具栏上的“切换断点”按钮即可。 • 被设置为断点的代码行将加粗反白显示. • 通过检查,消除了存在的错误,就可把断点再取消。 16
取消断点的方法: • 将光标指向定为断点的代码行 • 使用和设置断点同样的操作 • 如果要取消程序中所有的断点,则可使用“调试”菜单中的“清除所有断点”命令。 17
2、单步调试 单步调试即逐个语句或逐个过程的执行程序,每执行完一个语句或一个过程,就发生中断,因此可逐个语句或逐个过程地检查每个语句的执行状况或每个过程的执行结果。 18
(1)单步语句调试 单步语句调试过程中,大多采用快捷键F8进行操作。每执行一个代码行,系统就进入中断状态 每执行一个代码行,系统就进入中断状态,即可通过立即窗口检查语句的执行情况,如变量的当前值、某些属性值等,或者输入可立即执行的程序代码,再接着执行程序,观察程序的运行是否符合预定的要求。 当单步语句调试要执行的下一个语句是另一个过程时,系统会自动转向该过程去执行。 19
(2)单步过程调试 当可以确认某些过程不存在错误时,则不必对该过程再进行单步语句调试,而可直接执行整个过程,这就是单步过程调试。 如需对某个过程实行单步调试,可使用“调试”菜单中的“逐过程”命令或单击调试工具栏上的“逐过程”单步过程调试按钮。 20