What is EXC_BAD_ACCESS and how does it occur in Objective-C apps?

Updated May 17, 2026

Short answer

EXC_BAD_ACCESS occurs when an app accesses invalid or deallocated memory.

Deep explanation

This crash happens when a pointer references freed memory or corrupted heap regions. Common causes include over-released objects, dangling pointers, or use-after-free bugs. ARC reduces frequency but does not eliminate it, especially with C pointers or unsafe_unretained references.

Unlock with a Pro subscription to view this section.

View pricing

Real-world example

No real-world example available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Common mistakes

No common mistakes listed yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Follow-up questions

No follow-up questions available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

More Objective-C interview questions

View all →