title: Unexpectedly non-nil pointer in C array in Objective-C code
body: <p>Below is the code</p>
  
  <pre><code>Thing *thingA = [[Thing alloc] init];
  
  thingA.name = @"paper";
  
  Thing   *things[0];
  things[0] = thingA;
  
  NSLog(@"%@", things[0].name);
  // output paper
  
  [thingA release];
  // here dealloc on Thing class is call
  
  NSLog(@"%@", things[0].name);
  // output paper yet
  - Here I thought that this object would be nill
  </code></pre>
  
  <p>Why is the element things[0] that points to thingA pointer not nil, thus making the application crash? Why was thingA pointer not nil?</p>