title: referencing struct fields in c with square brackets and an index instead of . and ->?
body: <p>Assuming I have a structure such as:</p>
  
  <pre><code>typedef struct
  {
      char * string1;
      char * string2;
  } TWO_WORDS;
  </code></pre>
  
  <p>such that all the fields are of the same type, and my main has</p>
  
  <pre><code>TWO_WORDS tw;
  </code></pre>
  
  <p>can I reference string1 with tw[0] and string2 with two[1]?  If so: </p>
  
  <ul>
  <li>is this part of the c standard? </li>
  <li>do i have to cast the struct to an array first?</li>
  <li>what about fields which are different sizes in memory</li>
  <li>what about fields which are different types but the same size?</li>
  <li>can you do pointer arithmetic within a structure?</li>
   - 
  </ul>