在c++程序里面经常见到下面的头文件
#include <iomanip>
io代表输入输出,manip是manipulator(操纵器)的缩写(在c++上只能通过输入缩写才有效。)
iomanip的作用:
主要是对cin,cout之类的一些操纵运算子,比如setfill,setw,setbase,setprecision等等。它是I/O流控制头文件,就像C里面的格式化输出一样.以下是一些常见的控制函数的:
dec 置基数为10 相当于"%d"
hex 置基数为16 相当于"%X"
oct 置基数为8 相当于"%o"
setfill( 'c' ) 设填充字符为c
setprecision( n ) 设显示有效数字为n位
setw( n ) 设域宽为n个字符
这个控制符的意思是保证输出宽度为n。如:
cout << setw( 3 ) << 1 << setw( 3 ) << 10 << setw( 3 ) << 100 << endl; 输出结果为
1 10100 (默认是右对齐)当输出长度大于3时(<<1000),setw(3)不起作用。
▲setw(n)用法: 通俗地讲就是预设宽度
如 cout<<setw(5)<<255<<endl;
结果是:
(空格)(空格)255
▲setfill(char c) 用法 : 就是在预设宽度中如果已存在没用完的宽度大小,则用设置的字符c填充
如 cout<<setfill(‘@‘)<<setw(5)<<255<<endl;
结果是:
@@255
应当指出,setfill和setw只作用于紧随其后的部分,例如
cout<<setfill('*')<<setw(6)<<123<<456;的运行结果为***123456,这里set('*')<<setw(6)只对 123 起作用输出了***123,456作为另一部分随后输出。
▲setbase(int n) : 将数字转换为 n 进制.
如 cout<<setbase(8)<<setw(5)<<255<<endl;
cout<<setbase(10)<<setw(5)<<255<<endl;
cout<<setbase(16)<<setw(5)<<255<<endl;
结果是:
(空格)(空格)377
(空格)(空格) 255
(空格)(空格)(空格) f f
▲ setprecision用法
使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。
如果setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。
如果与setiosflags(ios::scientific)合用, 可以控制指数表示法的小数位数。setiosflags(ios::scientific)是用指数方式表示实数。
setiosflags(ios::fixed) 固定的浮点显示
setiosflags(ios::scientific) 指数表示
setiosflags(ios::left) 左对齐
setiosflags(ios::right) 右对齐
setiosflags(ios::skipws) 忽略前导空白
setiosflags(ios::uppercase) 16进制数大写输出
setiosflags(ios::lowercase) 16进制小写输出
setiosflags(ios::showpoint) 强制显示小数点
setiosflags(ios::showpos) 强制显示符号
举例:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout<<12345.0<<endl;//输出"12345"
cout<<setiosflags(ios::fixed)<<setprecision(3)<<1.2345<<endl;输出"1.234"(遵循四舍六入五成双的原则,而不是四舍五入的原则)
cout<<setiosflags(ios::scientific)<<12345.0<<endl;//输出"1.234500e+004 "
cout<<setprecision(3)<<12345.0<<endl;//输出"1.23e+004 "
return 0;
}
///
#include<fstream>
#include<iomanip>
#include<iostream>
using namespace std;
int main(int argc, char* argv[])
{
int i;
ofstream ostrm;
ostrm.open("test2.txt");
for(i=0;i<10;i++)
{
ostrm<<setiosflags(ios::left)<<setw(10)<<setfill('*')<<i<<endl;
}
ostrm.close();
}
/

0*********
1*********
2*********
3*********
4*********
5*********
6*********
7*********
8*********
9*********

摘:设置向文件中的输出格式相关推荐

  1. Python批量设置pptx文件中文本框边框与填充样式(含20分钟视频讲解)

    近期会议: 10月30-11月1日 全国高校Python课程高级研修班(苏州) 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清 ...

  2. html让文本框左剧中对齐_Python批量设置pptx文件中文本框边框与填充样式(含20分钟视频讲解)...

    近期会议:10月30-11月1日 全国高校Python课程高级研修班(苏州)推荐图书:<Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学 ...

  3. python设置ini文件中的值_5分钟掌握Python中常见的配置文件

    为什么要写配置文件 在开发过程中,我们常常会用到一些固定参数或者是常量.对于这些较为固定且常用到的部分,往往会将其写到一个固定文件中,避免在不同的模块代码中重复出现从而保持核心代码整洁. 这个固定文件 ...

  4. python设置ini文件中的值_PyCharm设置python文件模板,自动读取文件信息。

    #!/usr/bin/env python # -*- coding:utf-8 -*- '''================================================= @P ...

  5. 如何用 VBA 设置word文件中嵌入图像的亮度、对比度和清晰度?

    对于内嵌图像比较多的文件,当这些文件具有相似的图像灰度分布时,往往需要给他们设置同样的亮度.对比度和清晰度属性,让它们具有比较理想的感观效果.以下就是可以自动设置图像上述属性的vba代码. 'On E ...

  6. java 更改excel文件名称_根据Excel文件中的内容,修改指定文件夹下的文件名称

    问题:根据Excel文件中内容,把文件名称由第2列,改为第1列.比如:把文件"123.jpg"修改为"1.jpg". aaarticlea/png;base64 ...

  7. android 颜色资源文件,android中colors.xml颜色设置资源文件的方法

    1. 打开res目录下的values文件夹,双击打开colors.xml文件进行编辑 上代码 #008577 #00574B #D81B60 #ff0000 #0000ff 2. 在res目录下的la ...

  8. 你有没有觉得邮件发送人固定配置在yml文件中是不妥当的呢?SpringBoot 动态设置邮件发送人

    明月当天,不知道你有没有思念的人 前言 之前其实已经写过SpringBoot异步发送邮件,但是今天在一个小项目中要用到发送邮件时,我突然觉得邮件发送人只有一个,并且固定写在yml文件中,就是非常的不妥 ...

  9. 使用xslt将.xml,转换成一个html网页时中文显示乱码怎么办,用dom将数据写到xml中 设置xml文件gbk编码时中文会出现乱码...

    问题:我用dom将数据写到xml中 设置xml文件的编码格式是gbk时再dos下运行jar包中文会出现乱码 如下: 代码如下: StringWriter strWtr = new StringWrit ...

最新文章

  1. 869所高校上榜!2020中国内地大学第三方综合指数排名出炉
  2. windows10 下 cuda安装
  3. Leetcode 98. 验证二叉搜索树 (每日一题 20210810)
  4. C#结合js 上传文件和删除文件(技术点有:asp.net mvc ,nhibernate,ajax等)
  5. HBase 名称空间namespace的创建/建表/删除
  6. js冒泡法和数组转换成字符串
  7. phpStorm安装xDebug
  8. JavaFX 2.0和Scala,例如牛奶和饼干
  9. c++ 用eclipse建立一个类,并实例化并运行
  10. QT学习笔记(十一):QString类
  11. python做俄罗斯方块如何显示下一个随机方块_随机俄罗斯方块形状
  12. Spring AOP 的日志管理实现
  13. Python教程-python字典中key的灵活使用fromkeys()
  14. 个人工作总结05(第二阶段)
  15. MicroPython学习笔记(二)操作GPIO和TIMER实现数码管动态显示
  16. Oracle、plsql安装以及使用教程
  17. conime.exe
  18. 2021-03-22 什么是SFP端口
  19. PS中改变人物衣服图案
  20. 王家卫入股的“导演合伙人制”,会给中国电影制造惊喜吗?

热门文章

  1. mysql join order by_MySQL 14 慢查询优化join、order by、group by
  2. python拼写检查_拼写检查 - Python文本处理教程™
  3. 你还在这样学习Python吗?真的不可以
  4. matlab的rvctools,rvctools 机器人工具箱,主要用于 仿真, 型很强。 matlab 270万源代码下载- www.pudn.com...
  5. python多进程_python多进程
  6. java 继承thread_java线程-创建线程(继承 Thread 类)
  7. 一名合格的运维工程师的历练之路
  8. Ubuntu下非常给力的下载工具–aira2
  9. 如何在FreeBSD中安装Nginx,MySQL,PHP(FEMP)
  10. 如何用matlab读取npz文件,Python Numpy中数据的常用的保存与读取方法