LLDB命令简单介绍

简介

LLDB是Low Lever Debugger的简称,翻译成中文应该叫做底层调试器,它是LLVM项目的调试器组件。LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间(compile-time)、链接时间(link-time)、运行时间(run-time)以及空闲时间(idle-time),对开发者保持开放,并兼容已有脚本。如果你了解过Swift语言及其作者,那么一定对Chris Lattner博士不陌生,那这里为什么要提到他呢?没错LLVM开发最初就是由Chris Lattner博士主持开展的。

LLDB支持调试C、Objective-C和C++编写的程序。Swift社区维护了一个版本,增加了对该语言的支持。默认内置于Xcode中,LLDB提供了一组广泛的命令,旨在与老版本的GDB命令兼容。除了使用标准配置以外,还可以很容易的自定义LLDB命令以满足实际需要。可以在Xcode的控制器进入lldb调试模式后,输入help可以查看所有Debugger commands,也可以在这个网站查询

breakpoint命令

断点命令,在平时使用Xcode开发的过程中,我们设置断点一般都是通过在界面上点击代码所在的行数设置的。其实也可以使用lldb的命令来设置断点。

根据名字设置断点

设置C函数名断点

<img src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/c1df1a8fc0824a1eb514cbc346414faf~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image) 在touchedBegan方法中,我们从界面设置了一个断点,进入了lldb调试模式,再输入以下命令设置函数断点:breakpoint set -n "test1",-n是--name的缩写,然后点击继续按钮,或者输入lldb命令c继续执行,可以看到其实Xcode集成的很多的调试功能就是从lldb这来的。调试下一步就在lldb输入n或者s,n遇到子函数不会进入,s遇到子函数会进入" style="margin: auto" />

设置OC方法名断点

先搭建个如图所示的简单界面 <img src="https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/026b14e3117e49d6b98f474643da37e3~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image) 然后暂停程序,在控制台输入如下命令:breakpoint set -n "-[ViewController save:]" -n "-[ViewController pause:]" -n "-[ViewController continue:]"这样就设置了一组断点,它有三个断点。可以使用以下命令查看当前所有断点:breakpoint list ![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9c17f3eaf4df4d32b259e2295a1da0bd~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image" style="margin: auto" />

禁用和启用断点

禁用断点,后面的数字是breakpoint list显示的编号,可以同时禁用1组,也可以单独禁用组里的某个 breakpoint disable 编号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值