Gnu 调试器无法从显示中删除变量?
Gnu debugger can't remove variable from display?
我正在 linux ubuntu 16.04 上开发一个 c++ 程序,我已经完成了一个关于 gnu 调试器的教程。
我的代码有一些问题,当我逐步执行它时,我更容易比较每个部分的两个变量 fullPath
和 argv[1]
但是一旦我过了那个特定的部分,我想删除 argv[1]
。
我给他们打了以下电话:
display argv[1]
display fullPath
但是,当我尝试使用 undisplay argv[1]
删除 argv[1]
时,出现如下错误:
warning: bad display number at or near 'argv[1]'
它仍然继续显示 argv[1]
除非我退出调试器并再次启动它而不显示它。有办法解决这个问题吗?
注意
我也试过 delete argv[1]
也没用。
undisplay
命令需要列表编号,而不是表达式。您可以通过键入以下内容来查看所有自动显示表达式的列表编号:
info display
假设 argv[1]
被分配到该列表中的第 3 项。然后您将使用以下命令将其删除:
undisplay 3
我正在 linux ubuntu 16.04 上开发一个 c++ 程序,我已经完成了一个关于 gnu 调试器的教程。
我的代码有一些问题,当我逐步执行它时,我更容易比较每个部分的两个变量 fullPath
和 argv[1]
但是一旦我过了那个特定的部分,我想删除 argv[1]
。
我给他们打了以下电话:
display argv[1]
display fullPath
但是,当我尝试使用 undisplay argv[1]
删除 argv[1]
时,出现如下错误:
warning: bad display number at or near 'argv[1]'
它仍然继续显示 argv[1]
除非我退出调试器并再次启动它而不显示它。有办法解决这个问题吗?
注意
我也试过 delete argv[1]
也没用。
undisplay
命令需要列表编号,而不是表达式。您可以通过键入以下内容来查看所有自动显示表达式的列表编号:
info display
假设 argv[1]
被分配到该列表中的第 3 项。然后您将使用以下命令将其删除:
undisplay 3