Xcode调试设备故障

时间:2013-12-19 14:01:35

标签: ios iphone objective-c xcode debugging

问题是,当我在设备上调试我的应用程序时,它不会调用异常断点。 例如,当我在模拟器上调试以下代码时

NSArray* array = [[NSArray alloc] initWithObjects:@"1",@"2", nil];
NSLog(@"%@",array[3]);

它工作正常,并以断点和NSRangeException停止 但是当我在设备上调试它时,我看到以下内容 enter image description here

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

有什么问题?在调用objc_exception_throw()的内部,它停止在抛出异常的位置,因为左侧的堆栈跟踪指示。如果将调试导航器底部的滑块一直拖到右侧,则可以看到完整的堆栈跟踪。

如果你想看看抛出的异常是什么,它就在第一个(也是唯一的)参数中。在ARM上,第一个参数在R0寄存器中传递,因此您可以在调试器控制台中使用此命令查看它:

(lldb) print-object $r0

或者您可以继续使用调试器,如果没有捕获到异常,它将被打印到控制台。