title: Value of variable as integer and as double
body: <p>So I have an unsigned integer Q with the value of 0xfccd11c0.</p>
  
  <p>When I print it with <code>printf("%i", Q);</code> I get -53669440 which is the signed integer representation of 0xfccd11c0 so I get it.</p>
  
  <p>But when I print it with <code>printf("%i", (double)Q);</code> I get 939524096. I DO know that in order to print a double value you need to use <code>%f</code> as the string format, but still, what happens when converting to double that is causing that value to be printed?</p>