如何增加 lldb 中的调试器输出?

How to increase debugger output in lldb?

我正在尝试使用 lldb 在 C++ 中打印一个非常大的向量。我p/x <my vector> 看它的内容。

我的问题是 lldb 截断了输出,在末尾添加了一个省略号。我怎样才能让它打印出整个东西?

打印矢量或其他集合时打印的最大元素数(lldb 称之为 "children")由设置控制:

(lldb) set show target.max-children-count
target.max-children-count (int) = 256

您可以使用设置命令设置最大值,例如:

(lldb) set set target.max-children-count 1024

如果您希望 lldb 始终打印所有元素,请将其设置为 -1。这有一点技巧,因为“-1”看起来像一个命令选项,所以你必须使用“--”参数告诉 lldb 它不是一个选项,例如:

(lldb) set set -- target.max-children-count -1

“--”不是此命令特有的,而是 lldb 的一般特征...

你可以把它放在你的 ~/.lldbinit 文件中,以便在所有 lldb 会话中设置它。