【问题标题】:How is the octave debugger used?八度调试器是如何使用的?
【发布时间】:2013-12-03 10:38:40
【问题描述】:

所以我正在尝试使用 octave 调试器来检测除零发生的位置。为此,使用“debug_on_warning ()”似乎是合乎逻辑的。但是我只是不明白如何使用这个函数调用。 我的意思是我应该把它放在脚本中的某个地方吗?但是调试器将如何启动? 举个例子就好了!

【问题讨论】:

    标签: debugging octave


    【解决方案1】:

    查看 Octave 手册的Debugging section

    对于您的情况,您应该将 debug_on_warning (1) 放在脚本的顶部,以便在警告发生时停止并让您进入调试模式。然后输入dbwhere 找出您的位置。

    另一种方法,这就是我这样做的方式,将命令 keyboard 留在您认为可能存在问题的某些区域。然后使用dbstep 逐行评估您的脚本。

    【讨论】:

      【解决方案2】:

      八度设置断点的解决方案

      在文件 myOctaveCode.m 的第 18 行设置断点

      dbstop myOctaveCode 18
      

      调用函数

      myOctaveCode
      

      调试器停止

      stopped in /.../myOctaveCode.m at line 18
      ...
      

      现在我可以使用调试器了

      debug> who
      
      Variables in the current scope:
      ... 
      

      调用dbstep的时候会跳到下一行

      debug> dbstep
      

      文档:https://octave.org/doc/v4.4.1/Debug-Mode.html#Debug-Mode

      备注

      我的回答正好符合问题的标题。这不是这个问题的确切答案。但我希望它可以帮助那些在寻找一般八度调试提示时偶然发现这个问题的人。所以请不要投票给我。

      【讨论】:

      • 在顶层 m_file 第 1 行启动调试器绝对有用,尽管我还没有完全理解 GUI 按钮。我很惊讶在第 1 行没有启动和按住调试器按钮以便添加断点。
      • 如果有一个“dbstep”命令的快捷方式会很好
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2020-09-09
      • 2016-12-26
      • 2017-01-21
      • 2011-12-31
      • 2020-10-08
      • 1970-01-01
      相关资源
      最近更新 更多