VB程序调试技巧

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一,如果遇到了一些逻辑性很强的问题比如有循环什么的我的方法是在关键地方加入debug.print 变量

这样可以比较好地找到问题

二,msgbox

三,监视窗口,如下面的例子

For i=1 to 10000

A=sqr(i)

next i

你想再监视当i=799时A的值,就可以添加监视,方法:点调试,添加监视,选择“当监视值为真时中断”,上面表达式框中写上i=799,

这样你按F5,运行程序,程序会在i=799时中断。其他选项你可以自己去琢磨一下。

一个程序如何顺利的“脱产”,调试的过程是非常重要的。学过、钻研过程序设计的人都有同样的感受,很多情况下,调试程序的过程会比程序编写的过程更为困难。任何一个天才都不敢说,他编的程序是100%正确的。几乎每一个稍微复杂一点的程序都必须经过反复的调试、修改,最终才完成。所以说,程序的调试是编程中的一项重要技术。

程序中的典型错误类型

A类:语法错误。

B类:编译错误。

C类:属性设置错误。

D类:逻辑错误。

调试方法

方法一:利用“MSDN帮助菜单”

“MSDN帮助菜单”是一个很好的自学工具,对于出现调试对话框的菜单来说,可以按下“帮助”按钮查看错误原因。

对于一些不是很清楚的函数格式、保留字的作用,也可以借助“帮助菜单”。

方法二:逐过程检查

主要检查代码是否写对,位置有没有错误,关键是要确定一段代码是在哪个事件控制下的。不妨先在脑海中把整个程序过一边,想一想究竟会有哪些事件发生(有些事件是人机互动的,例如:鼠标点击;而有些是机器自己执行的,这时要想到计时器的作用);然后想一想每一件事发生后有什么效果。我们代码所编写的一般就是事件发生后的这个效果,那么以此事件来决定代码所写的位置。

方法三:逐语句检查(顺序、语义)

主要检查每一句代码的顺序是否写对,语义是否正确。

把整个代码从头至尾地读一边,仔细思索每一段子过程什么时候执行,以及每一子过程中的每一句代码什么时候发生,必要时可以在程序段中插入Print语句分段查看;也可用注释语

句的方法加“'”或“rem”进行调试。

方法四:属性设置检查

通过观察现象来判断。可以先检查常见的几种错误。例如:

⒈运行时找不到窗体或控件,则可以判断有form或其他控件的“visible”属性被设为“false”;对于控件,也可能是其层次关系有错误。

⒉对象在窗体界面上成隐性,则可以判断程序运行前有“Enabled”属性被设置为“false”。

⒊如果无法产生动画效果,首先要检查计时器timer的“Enabled”和“Interval”属性的设置。其中,有些错误是同学在修改属性时不经意所犯的错误,如把对象的某些行为属性修改了,使之在程序运行时无效。

针对这样的错误,可以添加一个同样的新控件,把这两个控件的属性进行对比,便可查出哪一个被改过了。

以上的四种调试方法是适合我们学生使用的。

方法五:设计测试程序数据

对于运用数据量较大的程序,可以给出一组测试数据来进行调试,这些数据应覆盖程序中可能出现的所有情况。每组数据被输入后,程序的输出结果都应该正确,如果其中一组数据输入后不对,则说明程序中存在错误。

方法六:用“单步跟踪方法”调试

⒈单击集成开发环境的视图菜单,移动光标到工具栏子菜单,再移动光标到“调试”,屏幕上显示调试工具栏。

⒉把鼠标指针移到“逐语句”按钮,单击该按钮,启动程序。

⒊屏幕上显示程序窗体,单击该程序窗体,屏幕上显示代码窗口

⒋代码窗口中的黄色光标条指示下一条要执行的语句。不断单击调试工具栏上的逐语句按钮,程序就一条一条语句的执行。

通过单步跟踪可以看到,程序中是否所有的分支语句都被执行到。

方法七:用“监视表达式值方法”调试

这是通过判断关系表达值的真假,逐句检测程序的调试方法。

⒈在代码窗口中选择关系表达式。

⒉单击调试工具栏上的快速监视按钮,把所选的关系表达式添加到监视窗口中。

⒊单击调试工具栏上的逐语句按钮,启动程序单步运行。

⒋单击调试工具栏上的“监视窗口”按钮,打开监视窗口,从监视窗口中可以检查变量及表达式的值的对错。

方法八:使用“立即窗口”和Stop语句调试

适用于在循环语句中判断每次循环的正确与否。

⒈在程序的适当地方插入stop语句。

例如:

Dim n,i,k,s

n=InputBox(“请输入数据n:”)

s=0

k=1

For i=1 to n

k=k * i

Debug.Print i & “的阶乘:”, k

Stop

s=s+1/k

Next i

⒉启动程序运行,单击运行后的窗体,在InputBox对话框中输入数据5。单击“确定”后立即窗口会显示:

1的阶乘:1

⒊按下F5键程序继续运行,当再次运行到Debug.Print语句的时候立即窗口中就显示出2的阶乘,并又一次在Stop语句处停止。如此重复4次,程序终止。立即窗口中显示出所有的中间运算的结果:

1的阶乘:1

2的阶乘:2

3的阶乘:6

4的阶乘:24

5的阶乘:120

⒋检查中间运算结果无误,可以确定程序运算是正确的。

⒌从程序中删除语句:

Debug.Print i & “的阶乘:”, k

Stop(责任编辑:admin

相关文档
最新文档