C++的输出精度控制

使用这些格式需要声明包含<iomainip>

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 八进制的输入输出
ws 提取空白字符
flush 刷新流
resetiosflags(long) 请除特定的格式标志位
setiosflags(long) 设置特定的格式标志位
setfill(char) 设置填充字符
setprecision(int) 设置输出浮点数的精确度
setw(int) 设置域宽格式变量

C++输入输出流格式控制

1.使用控制符控制输出格式

控制符   作用  
dec   设置整数的基数为10  
hex   设置整数的基数为16  
oct   设置 整数的基数为8  
setbase(n)   设置整数的基数为n(n只能是16,10,8之一)  
setfill(c)   设置填充字符c,c可以是字符常量或字符变量  
setprecision(n)   设置实数的精度为n位。在以一般十进制小数形式输出时,n代表有效数字。在以fixed(固定小数位 数)形式和scientific(指数)形式输出时,n为小数位数。  
setw(n)   设置字段宽度为n位。  
setiosflags(ios::fixed)   设置浮点数以固定的小数位数显示。  
setiosflags(ios::scientific)   设置浮点数以科学计数法(即指数形式)显示。  
setiosflags(ios::left)   输出数据左对齐。  
setiosflags(ios::right)   输出数据右对齐。  
setiosflags(ios::shipws)   忽略前导的空格。  
setiosflags(ios::uppercase)   在以科学计数法输出E和十六进制输出字母X时,以大写表示。  
setiosflags(ios::showpos)   输出正数时,给出“+”号。  
resetiosflags   终止已设置的输出格式状态,在括号中应指定内容。  

2.用流对象的 成员控制输出格式

流成员函数   与之作用相同的控制符   作用  
precision(n)   setprecision(n)   设置实 数的精度为n位。  
width(n)   setw(n)   设置字段宽度为n位。  
fill(c)   setfill(c)   设置填充字符c。  
setf( )   setiosflags( )   设置输出格式状态,括号中应给出格式状态,内容与控制符setiosflags括号中内容相同。  
ubsetf( )   resetiosflags( )   终止已设置的输出格式状态。  

cout.width(10);
cout.setf(ios::hex);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/74227cd67a2a0f1296bff50296b1157c.html