title: Does C round floating-point constants
body: <p><a href="https://stackoverflow.com/questions/22337418/golang-floating-point-precision-float32-vs-float64">A question about floating-point precision in Go</a> made me wonder how C handles the problem.</p>
  
  <p>With the following code in C:</p>
  
  <pre><code>float a = 0.1;
  </code></pre>
  
  <p>Will <code>a</code> have the closest IEEE 754 binary representation of:</p>
  
  <pre><code>00111101110011001100110011001101 (Decimal:  0.10000000149011612)
  </code></pre>
  
  <p>or will it just crop it to:</p>
  
  <pre><code>00111101110011001100110011001100 (Decimal:  0.09999999403953552)
  </code></pre>
  
  <p>Or will it differ depending on compiler/platform?</p>