返回
iOS LLDB 调试技巧
IOS
2023-11-17 09:30:34
作为 Xcode 工程中的默认调试器,LLDB 取代了 GDB,带来了强大的调试功能。本指南旨在提供 iOS LLDB 调试的实用技巧,帮助开发者快速上手并有效解决问题。
要点
- LLDB 调试的先决条件是设置断点。
- 调试命令必须在控制台中输入。
- 通过键入前三个字符或使用
...
可触发命令自动补全。
命令概览
调试会话控制
b
或break
:设置断点n
或next
:单步跳过s
或step
:单步进入c
或continue
:继续运行r
或run
:从头运行
内存检查
p
或print
:打印变量值po
或print object
:打印对象值,包括内部属性x
或examine
:检查内存内容
堆栈追踪
bt
或backtrace
:打印调用堆栈frame
:切换到指定堆栈帧
高级功能
po [expression]
:动态求值表达式expr
:以 C 语言求值表达式script
:执行 Lua 脚本
LLDB 命令行技巧
- 使用 Tab 键进行命令自动补全。
lldb
提示符后输入help
可获取命令帮助。^D
可重复执行前一个命令。- 使用
history
命令查看命令历史记录。
iOS 特定技巧
expr [variable]
:获取 iOS 变量值的地址。po
或print object
:打印 Objective-C 对象。expr -l objc -O -- ${object}
:输出 Objective-C 对象的。
用例示例
检查变量值:
(lldb) p variableName
单步进入方法:
(lldb) s -n 5
打印对象:
(lldb) po myObject
求值表达式:
(lldb) po [10 + 20]
运行 Lua 脚本:
(lldb) script lldb.target.modules[0].functions[0].basic_block_infos[0].instructions[0].dump()
**