【发布时间】:2017-01-11 13:01:59
【问题描述】:
我正在尝试使用 lldb 在 C++ 中打印一个非常大的向量。我会p/x <my vector> 来查看它的内容。
我的问题是 lldb 会截断输出,并在末尾添加一个省略号。我怎样才能让它打印整个东西?
【问题讨论】:
我正在尝试使用 lldb 在 C++ 中打印一个非常大的向量。我会p/x <my vector> 来查看它的内容。
我的问题是 lldb 会截断输出,并在末尾添加一个省略号。我怎样才能让它打印整个东西?
【问题讨论】:
打印矢量或其他集合时打印的最大元素数(lldb 称为“子元素”)由设置控制:
(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 会话中设置它。
【讨论】: