title: Array of character pointer declaration looks different in the below code
body: <p>I have seen a pointer of strings array defined as follows</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  int main()
  {
  char * testArray[sizeof(unsigned int) * 8][2]=
  {
  
     [0] = {"Test", "Index 0"},
     [1] = {"Test", "Index 1 "},
     [2] = {"Test", "Index 2"},
     [3] = {"Test", "Index 3"},
     [4] = {"Test", "Index 4"},
     [5] = {"Test", "Index 5"},
  };
  int i;
  for (i = 0 ; i &lt; 6; i++)
          printf("%s\n",testArray[i][1]); //Prints Index 0-5
  
  for (i = 0 ; i&lt; 6; i++)
          printf("%s\n",testArray[i][0]); //Prints Test
  }
  </code></pre>
  
  <p>I am not familiar with this way of array declaration and indexing. Can some one explain how this indexing and code works?</p>