Android Studio是否有NDK内存查看器?

问题描述 投票:2回答:1

我正在将Windows的C库代码移植到android中

当我在NDK C代码中创建动态分配的数组时,变量查看器窗口仅显示第一个元素的地址和第一个元素的值

我想看看手机内存中所有阵列的成员

android studio中是否有NDK的内存查看器或类似内容?

或者作为替代方案,我可以在lldb控制台中进行某种内存转储吗?

android android-ndk android-studio-3.0 lldb memoryview
1个回答
1
投票

您可以使用LLDB print(简称p)命令打印动态分配的int数组,如下所示:(根据您自己的情况修改大小和类型)

(lldb) print *(int (*)[5])foo2

它将输出int数组的所有元素。见下面的截图:

enter image description here

对于GUI样式,您可以选择Variables选项卡并使用与上述命令行类似的语句添加新监视,请参见下面的屏幕截图:

enter image description here

然后:

enter image description here

展开观察声明,您将看到以下所有元素:

enter image description here


编辑#1

使用parray命令更简单:

(lldb) parray 5 foo2
(int *) $5 = 0x000072e200e2da70 {
  (int) [0] = 20
  (int) [1] = 8
  (int) [2] = 55
  (int) [3] = 6
  (int) [4] = 52
}
© www.soinside.com 2019 - 2024. All rights reserved.