matlab 调试功能详解
来源:互联网 发布:seo软优化方案 编辑:程序博客网 时间:2024/06/05 17:20
Matlab的调试总体分为,直接调试和间接调试。
1.直接调试:
(1)去掉句末的分号;
(2)单独调试一个函数:将第一行的函数声明注释掉,并定义输入量,以脚本方式执行M 文件;
(3)适当地方添加输出变量值的语句;
(4)添加keyboard命令;
2.工具调试:
1.)以命令行为主的调试:
(1)设置断点:
1.直接调试:
(1)去掉句末的分号;
(2)单独调试一个函数:将第一行的函数声明注释掉,并定义输入量,以脚本方式执行
(3)适当地方添加输出变量值的语句;
(4)添加keyboard命令;
2.工具调试:
1.)以命令行为主的调试:
(1)设置断点:
- dbstop
in mfile:在文件名为mfile的M文件第一个可执行语句前设断点; - dbstop
in mfile at lineno:在mfile的第lineno行设断点; - dbstop
in mfile at subfun:当程序执行到子程序subfun时,暂时中止执行,并设断点; - dbstop
if error:遇到错误时,终止M文件运行,并停在错误行(不包括try...catch语句中检测到的的错误,不能在错误后重新开始运行); - dbstop
if all error:遇到任何类型错误均停止(包括try...catch语句中检测到的的错误); - dbstop
if warning:程序可恢复运行; - dbstop
if caught error:当try...catch检测到运行时间错误时,停止M文件执行,可恢复运行; - dbstop
if naninf 或 dbstop if infnan (2)断点清除: - dbclear
all:清除所有M文件中的所有断点; - dbclear
all in mfile:清除文件名为mfile的文件中的所有断点; - dbclear
in mfile:清除文件名为mfile中第一个可执行语句前的断点; - dbclear
in mfile at lineno: - dbclear
in mfile at subfun: - dbclear
if error/warning/naninf/infnan: (3)恢复运行: - dbcount:从断点处恢复程序的执行,直到下一个断点或错误后返回Matlab基本工作空间;
(4)调用堆栈: - dbstack:
- 1.)dbstack(N)
- 2.)dbstack('-completenames')
(5)列出所有断点: - dbstatus
s=dbstatus:返回值为M×1结构体
其中字段:
name-函数名;
line-断点行向量;
expression_r-与line中相对应的断点条件表达字符串;
cond-条件字符串,如error,caughterror,warning,或naninf;
identifier-当条件字符串是error,caughterror,warning,或naninf时,该字段是Matlab的信息指示字符串; - dbstatus
mfile:你可以制定M文件中所有断点设置,mfile必须为M文件函数或有效路径;
(6)执行一行或多行语句:- dbstep:执行下一个可执行语句;
- dbstep
nlines:执行下nlines行可执行语句; - dbstep
in:执行下一行可执行语句,如有子函数,进入; - dbstep
out:执行函数剩余部分,离开函数时停止; - 注:这四种都返回调试模式,如遇断点,中止;
(7)列出文件内容: - dbtype
mfile:列出mfile文件的内容,并在每行语句前加上标号以方便使用者设定断点; - dbtype
mfile start:end:列出mfile文件中指定行号范围的部分 - 注:在UNIX和VMS调试模式下,并不显示Matlab的调试器,此时必须使用dbtype来显示源程序代码;
(8)切换工作空间: - dbdown:遇到断点时,将当前工作空间切换到被调用的M文件的空间;
- dbup:将当前工作空间切换到调用的M文件的空间;
(9)退出调试模式: - dbquit;
1.1控制单步运行 step:单步,不进入函数
stepin:单步,进入子函数单步
stepout:在函数中的话跳出函数,否则直接跳入下个断点处,所以在使用这个命令的时候要确保白色箭头在函数里面。
saveand run:存储,运行
gountil cursor:运行到光标处
可以看到,以上几个按钮和C编辑器中是基本一样的意思
1.2断点操作
set/clearbreakpoint:设置清除断点
set/modifyconditional breakpoint:设置或修改条件断点,条件断点可以使程序满足一定条件时停止
enable/diablebreakpoints:使断点有效或无效
clearbreakpoints in all files:清除所有断点
stopif errors/warnings:程序出现错误或警告时停止运行,进入调试但不包括try...catch中的错误
切换工作空间,结束对程序的调试,打开编辑窗口中的stack列表,选择base,切换到主工作空间。记得要清除掉断点,红色圆点去掉了,绿色箭头(调试)变为白色,然后选择continue,白色箭头去掉,调试完成。
- matlab 调试功能详解
- Matlab调试功能详解
- Matlab调试功能详解
- Matlab调试功能
- Matlab绘图功能详解
- MATLAB中plot函数功能详解
- Matlab 2013b的调试(debug)功能在哪里?
- Fiddler-过滤功能+断点调试详解
- matlab调试
- matlab 调试
- matlab调试
- Matlab 调试
- matlab调试
- Visual Studio 2010并行编程及调试诊断功能详解
- **MATLAB** MATLAB中的绘图功能
- matlab调试C
- matlab 单步调试
- matlab 程序调试
- sql sa登陆失败 错误18456的解决方法
- List Set 集合概述
- [VC技术内幕V5翻译]第22章动态链接库(第一节)
- WEB前端优化:使用“渐进”图片或“交错”图片
- EXTJS4.0 datefield时间控件更改为获取服务器时间
- matlab 调试功能详解
- PeekMessage和GetMessage函数的主要区别
- USB 配置,接口,设置,endpoint描述符的关系
- 拓扑排序
- 软文营销:了解客户的需求及特点
- 数据库索引使用情况
- 吐槽一下win8
- C++虚函数表解析(转) ——写的真不错,忍不住转了
- C++ 迭代器, iterator