ma1*_*w28 4 debugging xcode gdb
我正在使用 Xcode 的调试器。在断点处停止时,是否可以在 GDB 命令提示符中键入命令来创建局部变量?如果是这样,如何?请举例说明。
我知道我可以在代码中完成,然后重新编译程序,但我正在寻找一种更快的方法。
如果您不需要在代码中引用变量,而只想进行一些临时调查,您可以通过使用变量名以 开头的命令来使用便利变量:set$
(gdb) set $foo = method_that_makes_something()
(gdb) set $bar = 15
(gdb) p $bar
$4 = 15
Run Code Online (Sandbox Code Playgroud)
您会注意到,当您打印带有数字变量前缀的内容时,您也可以稍后使用它们来引用该值:
(gdb) p $4
$5 = 15
Run Code Online (Sandbox Code Playgroud)
重申:这实际上并不影响程序的堆栈,它不能,因为这会破坏很多东西。但如果您只需要一个本地操场、一些循环变量等,它就会很有用。
虽然您不能修改堆栈,但您可以与程序的内存空间进行交互——您可以调用函数(包括malloc)和构造对象,但这些都将存在于静态内存中,而不是作为堆栈上的局部变量。
| 归档时间: |
|
| 查看次数: |
3002 次 |
| 最近记录: |