LLDB是个开源的内置于XCode的调试工具
一、p、po 打印
区别:po:只会输出对应的值 ,p:返回值的类型以及命令结果的引用名(输出值+值类型+引用名+内存地址)
二、expression 缩写:expr 表达式 、打印、或修改值
三、Thread
1、堆栈打印 thread backtrace (缩写bt)
2、thread return 跳出当前方法的执行
Debug的时候,也许会因为各种原因,我们不想让代码执行某个方法,或者要直接返回一个想要的值。这时候就该thread return上场了。
3、流程控制
实际上使用xcode自带的可视化工具来控制“继续”“暂停”“下一步”“进入”“跳出”更简单
继续:continue, c
进入:thread step-in, s
下一步:thread step-over |next | n
跳出:finish, f
四、breakpoint
1、添加断点 breakpoint set --name "函数名"
2、查看断点列表 breakpoint list
五、image lookup
1、image list 列出所加载的模块信息
2、image lookup -t 查找某个类型的信息
3、image lookup -a 根据内存地址查找在模块中的位置