title: C : how is double number (e.g. 123.45) stored in a float variable or double variable or long double variable?
body: <pre><code>#include &lt;stdio.h&gt;
  
  int main () {
  float a = 123.0; 
  
  unsigned char ch, *cp;
  ch = 0xff;
  
  cp = (unsigned char *) &amp;a;
  printf ("%02x", ch&amp;(*(cp+3)));
  printf ("%02x", ch&amp;(*(cp+2)));
  printf ("%02x", ch&amp;(*(cp+1)));
  printf ("%02x\n", ch&amp;(*(cp+0)));
  
  /*I have written this program to see binary representation, but I can not understand the output, the binary representation?
  }
  </code></pre>