回答
要调试EXC_BAD_ACCESS,通常可以通过启用僵尸对象来找出悬挂指针的位置。
的Xcode
选择编辑方案,在运行部分则诊断选项卡,然后单击“僵尸对象”选项。
AppCode
选择编辑目标,并添加以下环境变量:
NSZombieEnabled=YES
为EXC_BAD_ACCESS另一个原因可以是无限递归,其可以通过加入一些测井中找到。
更新C++:
要调试悬空在C指针++与锵编译器尝试使用Address Sanitizer (ASAN)来自谷歌。
我试过了,没用。因为它是导致问题的C++代码。 –
@AdamLee然后呢? http://stackoverflow.com/questions/3199067/c-catching-dangling-reference –
@AdamLee,Oops看起来像MudFlap是gcc只,更新为Clang/llvm –
它看起来像也许你正试图写入代码页或什么? EXC_BAD_ACCESS在/usr/include/mach/exception_types.h描述:做
#define KERN_PROTECTION_FAILURE 2
/* Specified memory is valid, but does not permit the
* required forms of access.
*/
你可以看到该地址是在您的二进制文件:
#define EXC_BAD_ACCESS 1 /* Could not access memory */
/* Code contains kern_return_t describing error. */
/* Subcode contains bad memory address. */
而且从kern_return.h
(lldb) image lookup -va 0xb0987654
但是你真正需要弄清楚的是谁在试图写在那里。如果问题很简单,这可能会告诉你什么是错误的,但正如贾斯珀所说,这可能是一些免费使用或其他类似问题,并且在你崩溃的时候,这个坏角色早已消失。 guardmalloc有时也会遇到这种错误(您可以在运行方案的Xcode中启用此功能。)
'在lldb中,图像查找-va 0x1586470c4'完全没有输出,甚至没有输出错误信息。 –
目前,“图像查找-a”只是在给定的地址打印它可以找到的内容,即使在“没有符号在这个地址”的情况下,当这是没有的时候......当LLDB不能打印时,它应该打印一些错误找到与给定地址关联的任何符号。请用Apple的bug记者或lldb.llvm.org bugzilla提交一份关于此问题的bug。谢谢。 –
确定您做了什么导致了崩溃。在特定视图控制器的视图执行加载或委托方法或特定操作时,它是否崩溃?这通常会帮助找到产生错误的对象。
- 大部分时间“NSZombies”都可以帮助识别死对象。您可以通过编辑您的方案产品 - >编辑方案 - >诊断来启用NSZombies。
- 如果仍然没有找到根本原因,那么总是从子视图控制器向后返回到父视图控制器,以查看需要保留哪些对象或需要正确传递哪些消息。
- 查看静态分析仪和仪器进行高级调试。
我希望这会帮助你。
问候, 吉生
- 1. main.m中调试错误EXC_BAD_ACCESS
- 2. EXC_BAD_ACCESS调试
- 3. 从NSString调试EXC_BAD_ACCESS
- 4. NSURLConnection中的EXC_BAD_ACCESS:如何调试?
- 5. 如何仅在设备上调试EXC_BAD_ACCESS
- 6. 错误,如何调试?
- 7. 如何调试CORS错误
- 8. 如何调试TSLint错误?
- 9. 如何调试XSL错误
- 10. Jammit错误如何调试?
- 11. CGContextRef - EXC_BAD_ACCESS错误
- 12. ABRecordCopyValue()EXC_BAD_ACCESS错误
- 13. 串错误:EXC_BAD_ACCESS
- 14. EXC_BAD_ACCESS错误
- 15. iOS EXC_BAD_ACCESS错误
- 16. UIButton EXC_BAD_ACCESS错误
- 17. EXC_BAD_ACCESS iOS错误
- 18. EXC_BAD_ACCESS错误
- 19. 错误EXC_BAD_ACCESS
- 20. EXC_BAD_ACCESS错误
- 21. EXC_BAD_ACCESS错误
- 22. EXC_BAD_ACCESS错误?
- 23. exc_bad_access错误
- 24. Xcode错误:“EXC_BAD_ACCESS”
- 25. EXC_BAD_ACCESS gelRunVertexSubmitARM错误
- 26. EXC_BAD_ACCESS错误
- 27. iOS EXC_BAD_ACCESS崩溃如何读取错误
- 28. iPhone - 调试EXC_BAD_ACCESS崩溃
- 29. com.apple.NSURLSession-work EXC_BAD_ACCESS崩溃调试
- 30. 的UIImagePickerController EXC_BAD_ACCESS错误
我想在这个地址,你不想打印出来的值,因为这很地址是摆在首位你的问题。什么*让你在那里*是要问的问题。 – Jay