C++的cout,cin等为ios类的派生类,可进行格式化输入输出

一.用到的ios类中的几个静态常量:

left,right,dec,oct,hex,showbase,showpoint,showpos,scientific,fixed,uppercase,lowercase

left 左对齐

right 右对齐

dec 置基数为10 相当于"%d"

hex 置基数为16 相当于"%X"

oct 置基数为8 相当于"%o"

showbase 显示进制

showpoint 强制显示小数点

showpos 强制显示符号

scientific 指数形式

fixed 固定的浮点显示

uppercase 16进制数大写输出

lowercase 16进制小写输出 //VS2010中已不使用

二.函数

类中成员函数(如cout.setf() )

相应的全局函数

setf(),flags()

setiosflags()

precision()

setprecision()

width()

setw()

fill()

setfill()

 

setbase()

 

resetiosflags()

1.cout.setf(),cout.flags(),setiosflags() 用于设定格式化输出,以上静态常量作为参数

如:cout.flags(ios::left|ios::hex|ios::showbase);

setiosflags(ios::left|ios::hex|ios::showbase);

2.cout.precision(n),setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。

如果setprecision(n)等与setiosflags(ios::fixed)等合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。

如果与setiosflags(ios::scientific)等合用, 可以控制指数表示法中系数的小数点后的位数。setiosflags(ios::scientific)是用指数方式表示实数。

如果setprecision(n)等设置了,但setiosflags(ios::fixed)没设置,即显示常规浮点数时,指总共的位数。

如果setprecision(n)等设置了,但setiosflags(ios::scientific)没设置,当浮点数较大,系统自动显示指数形式时,此时指系数总共的位数。

3.fill(char c),setfill(char c) 用法 : 就是在预设宽度中如果已存在没用完的宽度大小,则用设置的字符c填充

4.setw只作用于紧随其后的部分!!!

5.setbase(int n) : 将数字转换为 n 进制.不是一次性的,而且能覆盖之前设置的ios::oct,ios::dec,ios::hex等

6.resetflags(long f),该方法是setiosflags方法的反向方法,即清除之前语句中所使用的setiosflags设定的格式,恢复为默认格式。

取消哪个格式,参数就放哪个格式

如:cout.flags(ios::oct);
       cout<<12<<endl;
       cout<<resetiosflags(ios::oct);//取消ios::oct
       cout<<12<<endl;

运行结果:14

12

例子:

#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<<resetiosflags(ios::fixed); //需要用resetiosflags()函数清除前面的输出格式
cout<<setiosflags(ios::scientific)<<12345.0<<endl; //输出"1.23e+004"
cout<<setiosflags(ios::fixed)<<setprecision(3)<<12345.0<<endl; //输出"1.23e+004"
return  0;
}

C++ iomanip相关推荐

  1. c++ 输出控制iomanip

    2019独角兽企业重金招聘Python工程师标准>>> 1输出精度控制 #include<iostream> #include <iomanip>//精度控制 ...

  2. c++头文件iomanip.h中的setw、setprecision、setfill和setbase函数

    #include <iostream>   //不要用iostream.h ,会出现好多问题 #include <iomanip>    // io 流控制头文件, 主要是一些 ...

  3. c++头文件iomanip.h中setw()、setprecision()、setbase用法示例详解

    c++头文件iomanip.h中setw().setprecision().setbase #include <iostream>    //不要用iostream.h ,会出现好多问题 ...

  4. c++头文件iomanip.h中的setw、setprecision、setfill和setbase函数的使用

    #include <iostream> //不要用iostream.h ,会出现好多问题 #include <iomanip> // io 流控制头文件, 主要是一些操纵用法如 ...

  5. iomanip头文件

    iomanip是指IO Manipulators,意思是输入输出操纵器. iomanip中包含如下函数: 1.setiosflags: setiosflags(ios::fixed) 固定的浮点显示, ...

  6. #includeiomanip中的iomanip的一些用法

    关于<iomanip> iomanip这个头文件中,io代表输入输出,manip是manipulator(操纵器)的缩写(在c++上只能通过输入缩写才有效.) 如何使用 作用 编辑 主要是 ...

  7. 【C++】C++标准库之iomanip库(格式输入输出)

    目录 一.功能介绍 二.相关函数介绍 三.实例演示 一.功能介绍 用来对输入输出操作的格式进行更加方便的控制,在ios_base基类的基础上将每一种格式的设置和删除都进行了函数级的同名封装,提供了全局 ...

  8. <iomanip>库

    C++基础知识总结 ACM中常用的输入输出函数:cin/cout cin/cout重载了绝大多数类型的数据,适用于ACM竞赛中 注:重载就是一个函数名对应着多个功能不一函数体,例如scanf(&quo ...

  9. iomanip部分函数功能,流操作的控制

    小数输出例子:  #include<iostream> #include<iomanip> using namespace std; void main() {double a ...

  10. 一分钟了解“#include iomanip”

    #include <iomanip> io代表输入输出,manip是manipulator(操纵器)的缩写(在c++上只能通过输入缩写才有效.) iomanip的作用: 主要是对cin,c ...

最新文章

  1. 索尼发布全球首款内置AI传感器,1200万像素,660元起售
  2. elasticsearch 嵌入式_Elasticsearch 开箱指南
  3. ad域 禁用账号_通过AD域控平台统一批量管理公司电脑的桌面
  4. 9、C语言中sscanf使用及运算符优先级
  5. 春风十里不如春城一聚:华平解决方案巡展走进昆明
  6. 5g存储服务器是什么项目,5G时代对服务器有什么要求?
  7. ECCV 2020 大规模实例分割挑战赛(LVIS Challenge)冠军方案
  8. 自学前端,需要学习哪些知识点?学多久可以入职前端工程师?
  9. 深入理解redis复制原理
  10. vue省市区三级选择的实现
  11. 局域网互传文件工具_如何在 iOS、Android、macOS、Windows 之间快速文件互传?
  12. 微信小程序学习笔记③——wxml+wxss+js基础入门[样例+解析]
  13. usb xhci babble error问题解决
  14. win10修复计算机摁什么,编辑告诉你win10修复失败且无法进入系统的详尽处理步骤...
  15. easyUI的高级查询
  16. 一小时建立终生受用的阅读操作系统-笔记
  17. 利用.htaccess文件实现不带www域名301跳转到带www域名
  18. java谷歌填表_chrome自动填表会遮挡input中背景图的问题解决方法
  19. 隐私保护计算技术指南-1
  20. pyecharts折现面积图例题

热门文章

  1. CubeFS存储技术揭密(1) — 纠删码引擎系统设计
  2. 无服务器:S3 – S3BucketPermissions –操作不适用于语句中的任何资源
  3. 千年3+db服务器修改无效,《千年3》2019年1月服务器互通公告
  4. openstack 云主机分辨率问题
  5. 【STM32H7教程】第72章 STM32H7的SPI总线基础知识和HAL库API
  6. 百度网盘 备份mysql数据库_利用百度云免费备份SQL数据库
  7. 如何制作Windows10屏保?简单呀--Windows batch
  8. P15~P19 分支和循环
  9. 电脑连不上WiFi,右下角出现红叉怎么解决
  10. 29种Bokeh基础可视化图形