title: Negative array index in C
body: <p>There have been other question/answers on negative array in C in the forum, but i would request the answer to these for a 32-bit compiler :
  If we have an array defined <code>int test_array[5] = {1,2,3,4,5};</code></p>
  
  <p>then what should following statements return 
  <code>test_array[20]</code>, <code>test_array[-2]</code>, <code>test_array[-32764]</code>, <code>test_array[4294967700]</code>(value greater than what 32 bit can accommodate), <code>*(a-32764)</code> etc</p>
  
  <p>Does the compiler force any fixed value to be returned in case index go beyond its declared range ?</p>