我正在使用lldb parray命令given here来显示数组(结构内部的指针,数组大小由calloc定义)
这将以以下格式显示数组的值:
(float *) $0 = 0x123456789 {
(float) [0] = 0.0012
(float) [1] = 0.123456
(float) [2] = 0.0012
(float) [3] = 0.123456
.
.
.
我只想显示数组的值
0.0012
0.123456
0.0012
0.123456
.
.
.
这是lldb控制台该怎么做?我正在使用Objective-C。
还可以只显示一个范围的值(例如从第100到第150个元素)吗?
答案 0 :(得分:1)
expr
命令无法控制是否打印聚合对象的子元素的名称/类型。 parray
只是expr
命令的一种特殊用法。因此,您无法使用内置命令来做到这一点。
您可以随意编写一个基于python的命令来转储数组的输出。
还可以随时向http://bugs.llvm.org提出增强请求以添加此类选项。
您可以通过以下方式对显示范围进行排序:
(lldb) parray 4 &array[10]
(int *) $2 = 0x0000000100300218 {
(int) [0] = 10
(int) [1] = 11
(int) [2] = 12
(int) [3] = 13
(lldb)
当然,编号已关闭(但是您还是不想看到它……)