title: Formatting float with sprintf fails
body: <p>I am trying to create a formatted string (actually a char array) using sprintf in C++.
  The input variables are a floating point value <code>float fps</code>, an unsinged integer <code>unsinged int timeStepCount</code> and the buffer to write to <code>char out[256]</code>.
  I am calling sprintf as follows:</p>
  
  <pre><code>sprintf(out, "%4.1f FPS %10d time steps", fps, timeStepCount);
  </code></pre>
  
  <p>The <code>timeStepCount</code> gets formatted correctly (there are spaces added when the number is shorter than ten digits) but <code>fps</code> is not. It only gets as many digits as it actually needs. Did I forget something?
  I am using Visual Studio 2008, if that helps :)</p>