CodeLLDB与VSCode调试:如何打印数组?
在VSCode CodeLLDB中使用LLDB操作数据的方法
VSCode的CodeLLDB扩展监视窗口仅支持LLDB表达式(而非LLDB命令),所以parray这类命令无法直接在监视窗口执行,以下是可行的替代方案:
1. 使用LLDB表达式语法打印数组
直接在监视窗口输入LLDB支持的表达式来实现类似parray的效果:
- 打印数组
myarr的前10个int元素:(int(*)[10])myarr - 利用LLDB的范围语法:
myarr[0..9](该语法支持直接指定索引范围)
2. 在调试控制台执行LLDB命令
如果需要使用parray这类完整LLDB命令,切换到VSCode的调试控制台(Debug Console),直接输入命令即可:
parray 10 myarr
调试控制台支持所有LLDB原生命令,包括parray、frame variable等。
3. 自定义表达式简化操作
如果频繁需要打印固定格式的数组,可以在launch.json的initCommands中添加别名,简化输入:
"initCommands": [ "command alias print_arr expr -- (int(*)[${1}])${2}" ]
之后在调试控制台输入print_arr 10 myarr即可快速打印数组前10个元素。
内容的提问来源于stack exchange,提问作者gberth
相关产品推荐
相关产品推荐

