title: Convert void* from array of shorts (short*) to array of floats (float) in C
body: <p>I have a struct that contains a <code>void*</code> in this <code>void*</code> is an array of shorts (<code>short*</code>) eg <code>-6,-113, -110,...,n</code></p>
  
  <p>I would like to convert all of those wonderful shorts to floating point. eg <code>-6</code> --> <code>-6.0000000</code></p>
  
  <pre><code>typedef struct datablock
  {
    int maxRows;
    void *data;
  } DataBlock;
  
  // imagine *data points to a short* --&gt; { -6, -113, -100, -126 }
  
  static void Read(params here)
  {
    float *floatData;
    data = (float *) DataBlock-&gt;data; // obvious fail here
    // data will now look like --&gt; { -1.Q#DEN00, -1.Q#ENV00, ..., n} 
    // i assume the compiler is not handling the conversion for me
    // which is why the issue comes up
    // **NOTE** Visual Studio 2013 Ultimate is the enviorment (windows 8)
  }
  </code></pre>