开过过程中 经常会遇到程序奔溃的情况,用合适的调试方法可以方便我们定位问题,解决问题。以下介绍一些常用的调试方法
有效利用控制台信息
说到在控制台打印信息,就要提到经常用到的gdb命令了。首先说一下po ,po是print-object的简写,可用来打印所有NSObject对象
po xxx 或者print-object xxx
p是print的简写,可以用来打印所有的简单类型,如int,float,结构体等。
p xxx
call
call即是调用的意思。
bt
打印调用栈
help打印帮助
加入合适的断点
异常断点
有时程序崩溃 会显示崩溃在main方法中,无法定位具体问题。这时需要我们添加异常断点,这样当程序发生异常就会被中断,并停留在发生异常的位置,并将异常原因输出在控制台上。
符号断点
符号断点可以中断某个函数的调用,如果开发过程中遇到崩溃错误:unrecognized selector sent to instance XXXX 然后无法定位具体的出错行数,这时添加符号断点,然后运行程序,程序就会停在导致奔溃的代码处。