title: Casting a void pointer to a struct
body: <p>I started feeling comfortable with C and then I ran into type casting.  If I have the following defined in an *.h file</p>
  
  <pre><code>struct data {
      int value;
      char *label;
  };
  </code></pre>
  
  <p>and this in another *.h file</p>
  
  <pre><code># define TYPE      void*
  </code></pre>
  
  <p>How do I cast the void pointer to the struct so that I can use a variable "TYPE val" that's passed into functions?  For example, if I want to utilize the value that TYPE val points to, how do I cast it so that I can pass that value to another functions?</p>