什么是EXC_BAD_ACCESS,为什么他们不能陷入捕获?

时间:2014-07-04 04:32:01

标签: ios objective-c runtime-error exc-bad-access

EXC_BAD_ACCESS是一个麻烦但它确实改善了有关记忆的新手体验。我是即兴开发iOS程序的C程序员。

  1. 根据EXC_BAD_ACCESS
  2. memory概念是什么?
  3. 为什么它不能在catch块中被捕获,它是否在运行时出现运行时异常。?

1 个答案:

答案 0 :(得分:1)

EXC_BAD_ACCESS在导致指针(您的,iPhone内部或分配器正在使用的指针)被取消引用并且内存位置不在分配给您的程序的其中一个块内时发生。

这可能是因为

  • 用于指向内存的指针是正常的,但其块已被解除分配。
  • 指针已损坏。

在iOS / Cocoa中,try-catch样式异常是不可恢复的。异常不能用于可恢复的错误处理。检查一下Is there a way to catch or handle EXC_BAD_ACCESS?