代码之家  ›  专栏  ›  技术社区  ›  user13267

Android Studio有NDK内存查看器吗?

  •  1
  • user13267  · 技术社区  · 6 年前

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

    当我创建一个 动态分配数组 在ndk c代码中,“变量查看器”窗口只显示第一个元素的地址和第一个元素的值。

    我想看看 数组的所有成员 在手机存储器中

    Android Studio中是否有内存查看器或类似的NDK浏览器?

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

    1 回复  |  直到 6 年前
        1
  •  1
  •   shizhen    6 年前

    您可以打印 动态分配 使用lldb的int数组 print (简而言之 p )命令如下:(修改 大小 类型 根据你自己的情况)

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

    它将提供输出 所有元素 int数组的。请参见下面的屏幕截图:

    enter image description here

    对于GUI样式,您可以选择 变量 选项卡并添加一个新的手表,使用与上面命令行类似的语句,请参见下面的屏幕截图:

    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
    }