iOS - lldb底层探索(一)

调试LLDB源码

终端使用的lldb与xcode中的lldb是同一个lldb,所以没有什么版本的限制于不同。

LLDB命令学习。 

1. 在工程运行过程中,修改指定条件,在不重新运行工程的情况下,实现指定操作。 命令如下:  

 基于行号去修改条件 , 如果行号会改变,就不适应这种命令。 

br set -l 修改得代码行号 -f 那个控制器或者类 -C "e -- 你修改的条件" -G true
如: 

br set -l 33 -f ViewController.m -C "e -- _manager.isLocationSucess = YES" -G true


源码:
    _manager = [[LocationManager alloc] init];
    if (_manager.isLocationSucess) {  // 33行
        NSLog(@"LocationSucess");
    } else {
        NSLog(@"LocationFail");
    }

其余方式断点操作:

 

打印数组:

#打印 int a[4] = {1,2,3,4}
(lldb) parray 1 &a

 

register 寄存器 LLDB命令

 

启动运行LLDB命令

设置环境变量LLDB命令

 

memory LLDB命令大全

当前目标进程中用于内存中运行的命令, x 是memory read 的缩写 。 

 

expression 

启动多行调试命令输出

汇编lldb操作

 

逐行调试 LLDB命令

 

 

Target  

显示当前使用的target集

(lldb)target list 

image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值