Matlab的调试总体分为,直接调试和间接调试。
1.直接调试:
(1)去掉句末的分号;
(2)单独调试一个函数:将第一行的函数声明注释掉,并定义输入量,以脚本方式执行 M 文件;
(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,caught error,warning,或naninf;
    identifier-当条件字符串是error,caught error,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:单步,不进入函数
    step in:单步,进入子函数单步
    step out:在函数中的话跳出函数,否则直接跳入下个断点处
    save and run:存储,运行
    go until cursor:运行到光标处
    可以看到,以上几个按钮和C编辑器中是基本一样的意思

    1.2断点操作

Matlab远程调试 转的更多相关文章

  1. matlab远程调试

    转自:http://blog.163.com/hair_communication/blog/static/20198911920124145414945/ 只是作者好像也是转来的,原来出处好像是百度 ...

  2. 微信公众号开发之VS远程调试

    目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...

  3. tomcat开发远程调试端口以及利用eclipse进行远程调试

    一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里:  SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...

  4. Visual Studio 2012远程调试中遇到的问题

    有的时候开发环境没问题的代码在生产环境中会某些开发环境无法重现的问题,或者需要对生产环境代码进行远程调试该怎么办? Vs已经提供给开发者远程调试的工具 下面简单讲讲该怎么用,前期准备:1.本地登录账户 ...

  5. 使用Eclipse进行远程调试

    转自:http://blog.csdn.net/sunyujia/article/details/2614614 今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可能用语言 ...

  6. 微信公众号开发系列教程一(调试环境部署续:vs远程调试)

    http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...

  7. tomcat 远程调试

    1.服务端查看cataline.sh 中的描述  cataline jpda start 开启服务端远程调试 远程调试端口JPDA_ADDRESS="8000" 2.本地代码参考  ...

  8. 在Visual Studio上开发Node.js程序(2)——远程调试及发布到Azure

    [题外话] 上次介绍了VS上开发Node.js的插件Node.js Tools for Visual Studio(NTVS),其提供了非常方便的开发和调试功能,当然很多情况下由于平台限制等原因需要在 ...

  9. [教学] Delphi Berlin 10.1 开发 Windows 10 平板 App 远程调试

    Delphi Berlin 10.1 开发 Windows 10 平板 App 远程调试安装步骤: 准备电脑: 一台开发电脑,安装 Delphi 开发环境 一台平板电脑,安装 PAServer,安装方 ...

随机推荐

  1. MySQL基本使用

    来自李兴华视频. 1. 启动命令行方式 2. 连接mysql数据库,其中“-u”标记的是输入用户名,“-p”标记的是输入密码. 3. 建立一个新数据库——mldn,使用UTF-8编码: create ...

  2. Oracle(限定查询1)

    3.1.认识限定查询 例如:如果一张表中有100w条数据,一旦执行了“SELECT * FROM 表”语句之后,则将在屏幕上显示表中的全部数据行的记录,这样即不方便浏览,也有可能造成死机的问题出现,所 ...

  3. 电脑用HDMI线分屏后,耳机或音箱没声音之完美解决!

    现今,由于工作需要,很多人都偏爱给自己的电脑进行分屏,两个显示器同时连接在一台电脑上,并进行“扩展这些功能显示”,从而大大提高了工作积极性和工作效率.本人在进行分屏后遇到了耳机没有声音的问题,并进行了 ...

  4. 质控工具之cutadapt的使用方法

    cutadapt 参考:用cutadapt软件来对双端测序数据去除接头 fastqc可以用于检测,检测出来了怎么办? 看了几篇高水平文章,有不少再用cutadapt,虽然有时候数据真的不错,但是还是要 ...

  5. FreeBSD之基本配置

    1. 设置IP地址.网关ee /etc/rc.conf ifconfig_em0="inet 192.168.21.173 netmask 255.255.255.0"   #设置 ...

  6. C#特性-表达式树

    表达式树ExpressionTree   表达式树基础 转载需注明出处:http://www.cnblogs.com/tianfan/ 刚接触LINQ的人往往觉得表达式树很不容易理解.通过这篇文章我希 ...

  7. LeetCode--409--最长回文串

    问题描述: 给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串. 在构造过程中,请注意区分大小写.比如 "Aa" 不能当做一个回文字符串. 注意: 假设字 ...

  8. You Don't Know JS: this & Object Prototypes (第6章 Behavior Delegation)附加的ES6 class未读

    本章深挖原型机制. [[Prototype]]比类更直接和简单! https://github.com/getify/You-Dont-Know-JS/blob/master/this%20%26%2 ...

  9. HDOJ 1022 Train Problem

    两个数组存进出顺序,如果不同进栈,相同出栈.

  10. Parking Lot CodeForces - 480E

    大意: 给定01矩阵, 单点赋值为1, 求最大全0正方形. 将询问倒序处理, 那么答案一定是递增的, 最多增长$O(n)$次, 对于每次操作暴力判断答案是否增长即可, 也就是说转化为判断是否存在一个边 ...