gpt4 book ai didi

c - LLDB:如何制作一个漂亮地打印动态结构数组的自定义函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:11:46 27 4
gpt4 key购买 nike

我有一个动态分配的结构数组,我需要在断点处在 LLDB 中打印它。所有这些都发生在 ObjC 之外的一些纯 C 代码中。

我已经编写了一个执行打印作业的静态函数,虽然我可以在 LLDB 中调用它,但它只会打印大约 60 行,然后静默停止。有时,除非我在 LLDB 中再次按 Enter,否则它不会打印任何内容。我认为这是由于某种线程造成的,但我试图在该函数内执行 dispatch_async 但没有成功 - 它不会打印任何内容。

因此,我正在寻找替代解决方案(可能是 Python 脚本)以获得该数组的漂亮输出,因为它对我的调试工作至关重要。

最佳答案

你是在说这样的事情吗:

struct MyStruct {/* some stuff */};
struct MyStruct *struct_ptr = malloc(100 * sizeof(struct MyStruct));

并且您想打印 struct_ptr 就像您已经完成的那样:

struct MyStruct struct_arr[100];

如果你在 Xcode 8.0 之前使用 lldb,你可以这样做:

(lldb) 内存读取 -c 100 -t MyStruct struct_ptr

如果您拥有 Xcode 8.0 beta 之一,则可以使用新的 parray 命令:

(lldb) parray 100 struct_ptr

关于c - LLDB:如何制作一个漂亮地打印动态结构数组的自定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38919040/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com