7.6 调试 .m 文件
在函数M-文件中发生的运行时错误(与语法错误相反)通常很难修复,因为当错误强制返回到基本工作空间时,函数工作空间将丢失。编辑器/调试器使您能够在函数运行时进入函数内部,查看出错的地方。
(资料图片仅供参考)
>>editnewtgen>>dbtypenewtgen调试命令dbtypedbtype是MATLAB的一个调试命令,用于在命令窗口中显示指定M文件中的指定行。该命令的语法如下:
dbtype(filename,line)
其中,filename是要显示的M文件的名称,line是要显示的行号或行号范围。例如,要显示文件"myfun.m"中的第5行,可以使用以下命令:
dbtypemyfun.m5
该命令将在命令窗口中显示"myfun.m"文件的第5行代码。如果要显示多行代码,可以使用行号范围,例如:
dbtypemyfun.m10:15
该命令将在命令窗口中显示"myfun.m"文件的第10到15行代码。
dbtype命令通常用于调试MATLAB代码,特别是在调试大型M文件时,它可以帮助用户快速定位代码中的错误。
要进入Debug模式,您需要在您认为可能出现问题的位置之前设置一个断点。或者,如果你只想逐行“遍历”一个脚本,在第一个可执行语句处设置一个断点。行号右侧的列称为断点通道。您只能在可执行语句中设置断点—它们由断点通道中的破折号表示。
通过单击断点通道,在第3行设置一个断点(steps = 0;
)。您可以通过单击断点图标或使用Editor "s Breakpoints菜单(此菜单还允许您指定停止条件)来删除断点。您还可以使用工具栏上的设置/清除断点按钮设置/清除当前行的断点
设置好断点后,通过单击工具栏中的run
按钮,或使用debug -> run (F5)
在编辑器中运行脚本。
当脚本开始运行时,有两件事需要特别注意。首先,符号K出现在命令行提示符的左侧,以提醒您MATLAB处于调试模式。其次,在编辑器中,断点的右侧就会出现一个绿色箭头。箭头表示即将执行的下一个语句。
fhand=@f;dfhand=@df;[xfconv]=newtfun(fhand,dfhand,10)
请注意,MATLAB进入调试模式并将您带到newtfun中的断点。现在可以像以前一样继续调试了。调试也可以通过命令行和调试功能来完成。