LLDB部分指令
print、p :打印
po :打印对象
读取内存
memory read 内存地址 (memory read/数量格式字节数 内存地址)
(可以简写为) x/数量格式字节数 内存地址
示例:x/3xw 0x10010
格式说明
x :16进制; f :浮点; d :10进制
字节数说明
b :byte 1个字节; h :half word 2字节; w :word 4字节; g :giant word 8字节
修改内存中的值
memory write 内存地址 数值
示例:memory write 0x10010 10
(lldb) print student
(Student *) $3 = 0x000000010071f140
(lldb) p student
(Student *) $4 = 0x000000010071f140
(lldb) po student
<Student: 0x10071f140>
(lldb) memory read 0x000000010071f140
0x10071f140: 81 12 00 00 01 80 1d 00 00 00 00 00 00 00 00 00 ................
0x10071f150: 20 f2 71 00 01 00 00 00 60 f4 71 00 01 00 00 00 .q.....`.q.....
(lldb) memory read/3xg 0x000000010071f140
0x10071f140: 0x001d800100001281 0x0000000000000000
0x10071f150: 0x000000010071f220
(lldb) x/3xg 0x000000010071f140
0x10071f140: 0x001d800100001281 0x0000000000000000
0x10071f150: 0x000000010071f220
(lldb) memory write 0x10071f14b 5
(lldb) memory read 0x10071f140
0x10071f140: 81 12 00 00 01 80 1d 00 00 00 00 05 00 00 00 00 ................
0x10071f150: 20 f2 71 00 01 00 00 00 60 f4 71 00 01 00 00 00 .q.....`.q.....
(lldb) x/3xg 0x000000010071f140
0x10071f140: 0x001d800100001281 0x0000000005000000
0x10071f150: 0x000000010071f220
// methodForSelector 返回方法的IMP
(lldb) p (IMP)0x10f640f50
(IMP) $0 = 0x000000010f640f50 (KVO`-[TBPerson setName:] at TBPerson.h:15)
PS 此文为学习 李明杰 老师的 iOS底层原理课程 所写笔记
来源:CSDN
作者:BoAiLing
链接:https://blog.csdn.net/tanxianbo/article/details/104544190