C++格式化输入输出

cout.precision()设置小数点后精确度,

cout.width()设置宽度,

cout.setf()设置显示格式,比如

cout.setf(ios::left)左对齐

cout.setf(ios::showpoint)不管是否有小数位,显示小数点

cout.fill();不足宽度则填充,如cout.fill('0');

 

补充(部分是iomanip里的):

long flags( ) const 返回当前的格式标志。

long flays(long newflag) 设置格式标志为newflag,返回旧的格式标志。

long setf(long bits) 设置指定的格式标志位,返回旧的格式标志。

long setf(long bits,long field)将field指定的格式标志位置为bits,返回旧的格式标志

long unsetf(long bits) 清除bits指定的格式标志位,返回旧的格式标志。

long fill(char c) 设置填充字符,缺省条件下是空格。

char fill( ) 返回当前填充字符。

int precision(int val) 设置精确度为val,控制输出浮点数的有效位,返回旧值。

int precision( ) 返回旧的精确度值。

int width(int val) 设置显示数据的宽度(域宽),返回旧的域宽。

int width( )只返回当前域宽,缺省宽度为0。这时插入操作能按表示数据的最小宽度显示数据

dec 十进制的输入输出

hex 十六进制的输入输出

oct 八进制的输入输出

例如用cout<<hex<<i<<endl; 即可以让变量i以16进制的格式输出。

ws 提取空白字符

flush 刷新流

resetiosflags(long) 请除特定的格式标志位

setiosflags(long) 设置特定的格式标志位

setfill(char) 设置填充字符

setprecision(int) 设置输出浮点数的精确度

setw(int) 设置域宽格式变量

 

在c/c++系统中除了标准的输入输出外,还提供了更多的输入函数。这写函数主要有getch(),getche(), 
getchar (),cin.get(),putch(),putchar(),cout.put(),gets(),cin.getline(),puts()。另外 
还有些为了让缓冲区不影响程序的正确操作的缓冲去的操作,如:cin.putback(),fflush(stdin),cout.flush().我们 
做一下简单的说明。 
1、getch()和getche(),非缓冲式输入,从键盘读入一个字符。getch()读入字符不显示。有conio.h支持。 
2、cin.get(),getchar(),缓冲式输入,从键盘读入一个字符,并显示。getchar()由stdio.h支持,cin.get()由iostream.h支持。 
3、putch()和putchar(),非缓冲式输出,输出一个字符到显示器。putch()由conio.h支持,putchar()由stdio.h支持。 
4、cout.put(),缓冲式输出,输出一个字符到显示器。由iostream.h支持。 
5、gets()和cin.geline(),缓冲式输入,读入一字符串(包括空格,不包括最后的回车),gets()由stdio.h支持,cin.getline()由iostream.h支持。 
6、puts(),非缓冲输出,输出一个字符串,由stdio.h支持。 
7、cin.putback(),把一个字符送回输入缓冲区。 
8、fflush(stdin),清除输入缓冲区操作。无法清除cin.get()等带来的操作。 
9、cout.flush(),清楚输出缓冲区。 
在这里我们稍微说一下输入/输出缓冲区,这是为了减少程序访问io带来中断而设的一段空间。当程序满足某个刷新条件时,那就将清理缓冲区。具体条件为: 
1、输入缓冲区 
a,程序要求输入时,按下了回车键。 
b,遇到程序结束。 
c,遇到下一条输入语句。 
d,遇到清除缓冲区操作 
e,缓冲区溢出 
2、输出缓冲区 
a,输出缓冲区溢出 
b,遇到下一条输入语句 
c,使用刷新缓冲区迫使清除 
d,程序结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值