double d = 1.2;printf("%f\n",d);printf("%+f\n",d);printf("% f\n",d);
生产:
1.2+1.2 1.2
使用ostream,我可以做前两个,但我怎么做第三个?
int d = 1.2;std::cout << d << std::endl;std::cout << std::showpos << d << std::endl;// ??????????????
编辑:关于我是否只想用空格为我的所有值加上前缀似乎有些混乱.我只想用一个空格前缀正值,类似于a)像printf空格标志那样,b)类似于showpos所做的,除了空格而不是”.例如:
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
请注意,第三个值以空格为前缀,而第四个值(负值)不是.
解决方法 您可以使用setfill和setw,如下所示:cout << setw(4) << setfill(' ') << 1.2 << endl;cout << setw(4) << setfill(' ') << -1.2 << endl;
这会产生以下输出:
1.2-1.2
别忘了包含< iomanip>为了编译(link to ideone).
总结以上是内存溢出为你收集整理的c – ostream:前缀带空格的正数全部内容,希望文章能够帮你解决c – ostream:前缀带空格的正数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)