调试m文件--北太天元学习13
调试m文件--北太天元学习13
本节,我们介绍确定m文件中错误的技术--调试。调试是定位和修正程序或代码中错误的过程。
调试有助于修正运行时的错误, 这类错误通常很难追踪,有时会产生意想不到的结果。
我们可以使用运行/调试菜单启动调试M文件, 也可以在命令行窗口输入命令
dbon 启动调试。
调试分成下面几个步骤:
1. 调试准备,
2. 设置断点
3. 运行带有断点的m文件
4. 逐步执行m文件
5. 检查工作区的变量的值
6. 修正bug
7. 结束调试
1 调试准备
我将演示如何通过鼠标点击菜单 运行/调试 来启动调试。另外,也可以在命令行窗口输入 dbon 启动调试,此时命令行窗口变成
K>>
2 设置断点
有两种方式设置断点,一种方法是用鼠标点击,第二种方法是在命令行输入设置
断点的命令dbstop。 我将通过配套的视频给大家演示。

设置断点以暂停函数的执行,这样我们就可以检查问题所在
3 带断点运行
程序执行时,黄色的箭头停在显示暂停的蓝色小圈上,这意味着该行将被执行。
此时,我们可以检查变量、逐步执行程序以及执行命令调用别的功能。例如,我们看到工作区中有一个变量 x = 0.5, 我们想看看 sign(x) 是否返回了正确的符号,我们可以在命令行窗口输入
K>> sign(x) .

启动调试一个m函数,由于需要输入m函数的输入参数,因此,不要使用图形界面的按钮或者菜单来启动调试,而是使用
>> dbon
>> 函数名(输入参数列表)
我给出一个例如, 例如北太天元学习12中的m函数 bisectionEx2, 我们可以在设置断点后,通过输入下图中的命令来启动调试:

4 检查值
当程序暂停时,我们可以查看当前工作空间。当我们想查看一行代码是否产生是否
为预期结果。如果结果如预期,请转到下一行,然后继续运行,如果结果不符合预期,
则该行或前一行包含错误。当我们运行程序时,当前工作空间的变量在北太天元图形界面的
右侧窗口给出。在命令行窗口使用who 或者whos 也可以列出当前工作空间中的变量。
在编辑窗,当我们将光标定位在该行上一个变量的上方时, 一个窗口将弹出显示该变量的
当前值。这被称为数据提示。
5 纠正和结束调试
调试时,我们可以更改变量的值,看看新值是否产生预期结果。改变值的方法是在工作区中
点击该要修改的变量名,然后输入新的值。也可以在命令行窗口为该变量赋值。 然后继续
dbcontinue或者dbnext.
6 结束调试
确定问题后,结束调试会话。在命令行窗口使用 dboff 退出调试模式,用鼠标退出
调试的方法,我将在视频里演示。如果要编辑m文件,最好在先退出调试模式, 否则,
运行文件时可能会得到意想不到的结果。
7 修改m文件
当北太天元处于调试模式时,不要更改m文件。
为了修正m文件中的bug,我们首先退出调试模式(命令行输入 dboff),
然后保存M文件。在命令行矿口输入 dbclear 清除所有断点, 然后再次运行m文件,
以确保其产生预期结果。