xcode lldb常用命令行

控制流快捷命令

我们继续探索,还记得前面我们提到的几个控制流按钮吗,也就是这张图片:

调试工具

在 LLDB 命令行中,对于每个流程控制按钮都有相应的命令。

n 命令,代表 Step Over 操作。
s 命令,代表 Step Into 操作。
finish 命令,代表 Step Out 操作。
c 命令,代表恢复程序执行操作。

LLDB命令

命令名 用法 说明

当前视图图层

po [[[UIApplication sharedApplication] keyWindow] recursiveDescription]

临时刷新界面UI

lldb声明变量

在调试时,有时候想临时计算一下某个值来比较时,就可以通过这种方式来实现了,再也不用到源代码处添加上声明实现然后添加一句打印了,是否便利了很多?

(lldb) e NSString *$str = @"hehe" (动态改变的值)
(lldb) po $str
hehe

添加断点

如果我们不是在一开始就添加所有的断点,而在调试开始后,想给其它地方加个断点,那么我们可以很方便地通过命令添加断点:

(lldb) b ? 108(代表行号)

点击方法添加断点

(lldb) b ?-[ViewController onButtonClicked:]
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载 与调试器共舞 - LLDB 的华尔兹: https://objccn.io/issue-19-2/ 推荐:i...
    F麦子阅读 8,607评论 0 10
  • 与调试器共舞 - LLDB 的华尔兹 nangege 2014/12/19 你是否曾经苦恼于理解你的代码,而去尝试...
    McDan阅读 4,330评论 0 0
  • 你是否曾经苦恼于理解你的代码,而去尝试打印一个变量的值? NSLog(@"%@", whatIsInsideThi...
    木易林1阅读 4,500评论 0 4
  • 你是否曾经苦恼于理解你的代码,而去尝试打印一个变量的值? NSLog(@"%@", whatIsInsideThi...
    paraneaeee阅读 4,954评论 0 7
  • LLDB的Xcode默认的调试器,它与LLVM编译器一起,带给我们更丰富的流程控制和数据检测的调试功能。平时用Xc...
    CoderSC阅读 5,235评论 0 2