title: Extra digits with printf Hex
body: <p>Why do I get extra digits after the string of Hex digits when using printf?</p>
  
  <pre><code>cout &lt;&lt; printf("%06X ", 0xABCDEF);
  </code></pre>
  
  <p>produces: ABCDEF 7</p>
  
  <p>So where does the 7 come from and how can I get rid of it?</p>