VB.NET程序调试

.NET 专栏收录该内容
5 篇文章 1 订阅

程序出现的错误

   程序中的错误可分为语法错误、逻辑错误或运行错误三种类型,系统会在语法错误的下面加上波浪线,比较容易查找和排除,而逻辑错误或运行错误排除则比较困难。当程序中出现了逻辑错误或运行错误而又难以解决时,就应该借助于程序调试工具对程序进行调试。所谓程序调试就是在应用程序中查找并修改错误的过程。通过程序的调试可以纠正程序中的错误。为了更正程序中发生的不同错误,VB.NET提供了多种调试工具,如设置断点、插入观察变量、逐行执行和过程跟踪、各种调试窗口等。

   为了方便用户对程序进行调试,VB.NET提供了一组调试工具。可通过“调试”菜单和“调试”工具栏来调用这些调试工具,“调试”菜单如图所示,“调试”工具栏如图所示。当调试工具栏没有出现时,可执行【视图】→【工具栏】→【调试】使之出现,如图所示。上述就是相同功能的不同位置放置。
这里写图片描述这里写图片描述这里写图片描述

1.设置和删除断点

   断点是应用程序暂时停止执行的位置,也是让应用程序进入中断模式的地方。在程序设计中:可以在中断模式和校式下设置和删除断点在调试程断点,这样,有利于测试程序的功能和发现程序的逻辑错误。
  设置断点的方法主要有以下几种
  ①在代码窗口中,单击要设置断点的那一行代码,然后按F9键
  ②在代码窗口中,在要设置断点的那一行代码行击鼠标右键并选择插入断点”命令代码窗口中,在要设置断点的那一行代码行的左边界上的盛条上单击。被设置成断点的代码行显示为红色,并在其左边显示一个红点,如图所示。若要删除一个断点,只需重复上面步骤即可。
  这里写图片描述

2.跟踪程序的执行

   为在VB.NET中,提供了“逐语句”、“逐过程”、“跳出”等好几种跟踪程序执行的方式。
  ①逐语句执行:“逐语句”执行方式是一次执行一条语句,这种方使用“即时”窗口、“局部变量”窗口或“巡视”窗口,来查看语句的执行结果,借此分析程序中存在的问题。
  ②逐过程执行:“逐过程”执行与逐语句执行类似,差别在于当前语句如果包含过程调用,“逐语句将进入被调用过程,而“逐过程”则把整个被调用过程当作一条语句来执行。
  ③跳出:“跳出”命令是连续执行当前过程的剩余语句部分,并在调用该过程的下一个语句行处中断执行
  以上三种命令均可以通过执行【调试】菜单中的相应菜单命令或单击【调试】工具栏上的相应按钮来实现。
  在调试应用程序时,经常要分析应用程序的程序段或语句的运行结果,并希望能够看到变量、属性、表达式等值的变化,以便找出错误所在处。为便于观察程序块或语句的运行结果,在VB.NET提供了很多调试窗口,充分利用这些窗口,可以提高程序调试的效率。下面将一一介绍主要调用窗口的功能。

  1.”命令”窗口

   为在VB.NET中,有一个”命令”窗口,在该窗口中可以直接使用VB.NET的各种命令与系统交互。”命令”窗口有两种不同的模式:命令模式和立即模式。命令模式主要用来执行命令,立即模式主要用于调试程序。在调试应用程序执行函数或语句等操作时,可使用立即模式查看,并更改变量的值。通过执行【调试】→【窗口】→【即时】命令,可以以立即模式打开”命令窗口。当命令窗口处于立即模式时,标题栏显示”命令窗口立即”,如图所示。
  这里写图片描述
  这里写图片描述

  2.监视窗口

  “监视”窗只能在运行模式或中断模式下打开

   利用监视”窗口,可以动态观察变量、数组、数组元素和表达式的值,从而可以观察程序的运行情况,找到错误的所在。在”监视”观察的变量或表达式称为监视表达式。 打开方法是执行【调试】→【窗口】→【监视】命令,打开的监视”窗口如下图所示。
这里写图片描述
  若要在”监视”窗口中添加监视表达式,只需单击【监视】窗口”名称”列最下面单元格上单击在其中输入监视表达式即可。”监视窗口是最重要的调试用窗口之在逐语句运行的情况下,通过该窗口可以看到每执行一条语句后,监视表达式值的变化情况,从而可以找到错误所在。
  “局部变量”窗口可以显示当前过程中所有局部变量的值。当程序从过程执行到另一个过程时,”局部变量“中显示的变量及其值也会随之改变,因为该窗口只显示当前正在执行的过程中所有局部变量的值。打开局部变量“窗口的方法是执行【调试】→【窗口】→【局部变量】命令,打开“局部变量”窗口。
  局部变量”窗口只显示当前过程的局部变量”的值,楔块级变量和全局变量的值不会显示在该窗口中。除了上述窗口外,还有任务列表“窗口、”输出窗口、”Me”窗口等调试窗口。

  • 0
    点赞
  • 19
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值