我想声明一个数组便利变量,例如
set $list[10]
但我得到一个语法错误。
是否可以使用便利变量创建向量?
我可以使用指针,如果我能找到 GDB 可以使用但目标程序不会使用的绝对区域内存。
哦,顺便说一句,我没有我正在调试的目标程序的符号表,使用与 GDB 不兼容的编译器。
我拥有的 GDB 的跨目标版本不支持 python。
我想声明一个数组便利变量,例如
set $list[10]
但我得到一个语法错误。
是否可以使用便利变量创建向量?
我可以使用指针,如果我能找到 GDB 可以使用但目标程序不会使用的绝对区域内存。
哦,顺便说一句,我没有我正在调试的目标程序的符号表,使用与 GDB 不兼容的编译器。
我拥有的 GDB 的跨目标版本不支持 python。
我认为只有在劣质中分配内存才有可能。也就是说,尝试类似:
set $list = (int *) malloc (10 * sizeof (int))
更改类型以适应。
另一个类似的选项是使用 {...} 功能。我不确定,但我认为这可能会在某些情况下分配内存不足。无论如何,尝试:
print {1,2,3,4}[2]
我明白了
$1 = 3
是的你可以。
例如,
(gdb) set $a = (int [3]) {0}
(gdb) p $a
$14 = {0, 0, 0}