title: Check for uninitialized structs in an array
body: <p>As far as I know if you got an array in C and initialize it with a size and a number of items less then the size, the array is initialized with the given items and the rest of the places in the array are initialized with 0 or a value that's most representative to 0.
  But what is it like, when you've got an array of type struct something and how can I check if that specific index in the array is an initialized or uninitialized one?</p>
  
  <p>Like:</p>
  
  <pre class="lang-c prettyprint-override"><code>struct a {
      char x[20];
      int y;
  };
  typedef struct a a;
  
  a a[5] = {
      {.x = "name", .y = 1},
      {.x = "surname", .y = 2}
  };
  </code></pre>
  
  <p>In this case the first two indexes in the array are the given initialized structs but what are the others one and how should I check in a later implementation if the index I am accessing is an initialized or uninitialized one?</p>