ostream: prefix a positive number with a space
<p>In C a space can be included in a printf formatting flag which results in positive numbers being prefixed with a space.  This is a useful feature for aligning signed values.  I can't figure out how to do the same in C++.  In C:</p>

<pre><code>double d = 1.2;
printf("%f\n",d);
printf("%+f\n",d);
printf("% f\n",d);
</code></pre>

<p>produces:</p>

<pre><code>1.2
+1.2
 1.2
</code></pre>

<p>Using ostream, I can do the first two, but how do I do the third?</p>

<pre><code>int d = 1.2;
std::cout &lt;&lt; d &lt;&lt; std::endl;
std::cout &lt;&lt; std::showpos &lt;&lt; d &lt;&lt; std::endl;
// ??????????????
</code></pre>

<p>EDIT:  There seems to be some confusion about whether or not I just want to prefix all of my values with a space.  I only want to prefix <em>positive</em> values with a space, similar to a) like the printf space flag does and b) similar to what showpos does, except a space rather than a '+'.  For example:</p>

<pre><code>printf("%f\n", 1.2);
printf("%f\n", -1.2);
printf("% f\n", 1.2);
printf("% f\n", -1.2);

1.2
-1.2
 1.2
-1.2
</code></pre>

<p>Note that the third value is prefixed with a space while the fourth (negative) value is not.</p>
