title: problem with casting float -> double in C when fread
body: <p>I have a problem with casting from float to double when fread;</p>
  
  <pre><code>fread(doublePointer,sizeofFloat,500,f);
  </code></pre>
  
  <p>if i change  double pointer to float pointer, it works just fine. 
  However,i need it to be double pointer for laster on, and i thought when i write from small data type (float)to bigger data type(double)'s memory, it should be fine. but it turns out it doesnt work as i expected. 
  what is wrong with it, and how do i solve this problem. </p>
  
  <p>i know i can solve it by converting it one by one. but i have a huge amount of data. and i dont wanna extra 9000000+ round of converting.. that would be very expensive. and is there any trick i can solve it?</p>
  
  <p>is there any c++/c tricks</p>
  
  <p>thanks</p>