Matlab 如何在八度音阶中逐行执行M文件?

Matlab 如何在八度音阶中逐行执行M文件?,matlab,debugging,octave,ddd-debugger,Matlab,Debugging,Octave,Ddd Debugger,我的电脑中没有安装Matlab,但我发现我可以在很久以前安装的Ubuntu机器中使用Octave。CentOs计算机上的倍频程版本太低,无法运行该程序 在VOC2012开发工具中,我看到了example\u classifier.m程序,我可以通过在shell中输入octave并在octave shell中键入example\u classifier来运行该程序。我可以看到结果文件和图表 但我需要分析几个M文件程序。能够使用调试器逐行分析它对于高效工作至关重要 如何使用Octave以图形方式调试

我的电脑中没有安装Matlab,但我发现我可以在很久以前安装的Ubuntu机器中使用Octave。CentOs计算机上的倍频程版本太低,无法运行该程序

在VOC2012开发工具中,我看到了
example\u classifier.m
程序,我可以通过在shell中输入
octave
并在octave shell中键入
example\u classifier
来运行该程序。我可以看到结果文件和图表

但我需要分析几个M文件程序。能够使用调试器逐行分析它对于高效工作至关重要


如何使用Octave以图形方式调试/分析代码?(我的意思是我想在程序中使用
next
step in
finish
这类命令,就像我在使用gdb的ddd中一样)。

我发现我可以键入
倍频程——强制gui
并打开程序(示例_classifier.m)
在编辑器窗格中(右侧窗格之一,您可以在右下角选择),
按“运行”按钮(绿色三角形)。
可以设置断点、单步等。(您可以看到按钮。)


您可以从命令行访问Octave调试器,访问方式与访问MATLAB调试器相同:

  • 定义断点。这可以在任何时候使用,当到达断点时,倍频程将进入调试模式

    例如,
    dbstop myfunction
    将在函数的开头创建一个断点
    myfunction
    ,执行该函数将立即在该文件的顶部开始调试

  • 执行下一行。您也可以在中执行
    dbstep

  • 在调试器中,您可以像在正常操作下在基本工作区一样检查函数工作区中的变量:键入变量名称以查看其值,使用
    plot
    或任何其他命令,等等


有关调试命令的完整列表,请参阅。

Hi,我询问了如何启动调试器,dbstop和dbstep适用于我已经在调试模式下执行.m程序的情况。你能补充一点关于如何进入调试模式的解释吗?对于不熟悉(或忘记)倍频程和matlab的人。@ChanKim:
dbstop
可以随时使用,尤其是在调试模式之外。请参阅我的编辑。您应该始终提及您正在使用的软件版本(本例中为GNU Octave)。您的CentOs机器有什么意义呢?我的CentOs 6.9机器上的octave版本是3.4.3,我看到octave gui版本可以从3.8中获得。在我的Ubuntu14.04.5LTS机器上,它是3.8.1。另外,我在centos版本上看到了这种错误,除了gui之外,我在Ubuntu14.04.5LTS机器上没有看到。。错误:从实矩阵到实标量的转换无效错误:倍频程\u基\u值::int\u值():错误的类型参数“矩阵”错误:addpath:预期最终参数为1或0