使用断点可以将程序停止在错误位置之前,并单步执行代码以查找何处出错。
如果您尚未取消停靠 "Output"(输出)窗口,请执行该操作。
您早先是从命令行运行的程序。通过在 dbxtool 中运行程序来重现错误。
在工具栏中单击 "Restart"(重新启动)按钮
或在 "Debugger Console"(调试器控制台)窗口中键入 run。
在 "Debugger Console"(调试器控制台)窗口中按回车键。
警报框会提供有关 SEGV 的信息。
在警报框中,单击 "Discard and Pause"(放弃并暂停)。
"Editor"(编辑器)窗口会再次在 Interp::find() 中突出显示对 strcmp() 的调用。
在工具栏中单击 "Make Caller Current"(使调用方成为当前调用方)按钮
以转至您先前在 Interp::dispatch() 中看到的未知代码。
在下一节,您将在调用 find() 之前一个位的位置设置断点,这样您就可以单步执行代码以了解为何出错。