常用LLDB指令

tree_22.jpg

print、p:打印

po:打印对象

  • 读取内存

memory read/数量格式字节数 内存地址
x/数量格式字节数 内存地址
x/3xw 0x10010

  • 修改内存中的值

memory write 内存地址 数值
memory write 0x0000010 10

  • 格式
    x是16进制,f是浮点,d是10进制

  • 字节大小
    b:byte 1字节,h:half word 2字节
    w:word 4字节,g:giant word 8字节

  • 将Objective-C代码转换为C\C++代码
    xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc OC源文件 -o 输出的CPP文件
    如果需要链接其他框架,使用-framework参数。比如-framework UIKit

  • __weak问题解决
    在使用clang转换OC为C++代码时,可能会遇到以下问题
    cannot create __weak reference in file using manual reference

解决方案:支持ARC、指定运行时系统版本,比如
xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc -fobjc-arc -fobjc-runtime=ios-8.0.0 main.m

你可能感兴趣的:(常用LLDB指令)