我正在使用Xcode的调试器。当停在断点处时,是否有一个命令可以输入GDB命令提示符来创建局部变量?如果是这样,怎么样?请举一个例子。GDB:创建局部变量?
我知道我可以在代码中完成它,然后重新编译程序,但我正在寻找更快的方法。
我正在使用Xcode的调试器。当停在断点处时,是否有一个命令可以输入GDB命令提示符来创建局部变量?如果是这样,怎么样?请举一个例子。GDB:创建局部变量?
我知道我可以在代码中完成它,然后重新编译程序,但我正在寻找更快的方法。
由于本地变量需要堆栈空间,并且(编译的)代码绑定到堆栈布局,因此您不能。
将此与脚本语言进行比较并不合适。
由print
命令打印的值保存在GDB“值历史记录”中。这允许您在其他表达式中引用它们。
例如,假设您刚刚打印了一个指向结构的指针并希望查看结构的内容。它只需输入
p *$
嗯,我很困惑。事后看来,他的问题不太清楚。他是指一个本地堆栈变量(我的假设)还是一个GDB便利变量(您的假设)。要添加评论的问题。 – 0xC0000022L
会是什么意思? – Neil
混乱,就像您可以使用交互式Ruby Shell(IRB)一样。 – ma11hew28
对不起,你的问题不太清楚。我只在看到尼尔的回复后才注意到。从你提到的你意识到重新编译你的代码来引入一个“局部变量”的选择我假设你的意思是一个堆栈变量。你或者Neil是否认为你的意思是一个GDB便利变量? – 0xC0000022L