cout

输入/输出格式控制

内部成员函数

流成员函数

与之作用相同的控制符

作用

precision(n)

setprecision(n)

设置实数的精度为n位

width(n)

setw(n)

设置字段宽度为n位

fill(c)

setfill(c)

设置填充宇符c

setf()

setiosflags()

设置输出格式状态,括号中应给出格式状态,内容与控制符setiosflags括号中的内容相同

unsetf()

resetioflags()

终止已设置的输出格式状态,在括号中应指定内容

 

流成员函数setf和控制符setiosflags括号中的参数表示格式状态,它是通过格式标志来指定的。格式标志在类ios中被定义为枚举值。因此在引用这些格式标志时要在前面加上类名ios和域运算符“::”。

格式标志

作用

ios::left

输出数据在本域宽范围内向左对齐

ios::right

输出数据在本域宽范围内向右对齐

ios::internal

数值的符号位在域宽内左对齐,数值右对齐,中间由填充字符填充

ios::dec

设置整数的基数为10

ios::oct

设置整数的基数为8

ios::hex

设置整数的基数为16

ios::showbase

强制输出整数的基数(八进制数以0打头,十六进制数以0x打头)

ios::showpoint

强制输出浮点数的小点和尾数0

ios::uppercase

在以科学记数法格式E和以十六进制输出字母时以大写表示

ios::showpos

对正数显示“+”号

ios::scientific

浮点数以科学记数法格式输出

ios::fixed

浮点数以定点格式(小数形式)输出

ios::unitbuf

每次输出之后刷新所有的流

ios::stdio

每次输出之后清除stdout, stderr

 

注意点:

1、第一次setf设置的格式对输出流一直起作用,如果后面没有清楚设置的格式,后面在用setf设置的输入/输出格式都是无效的。

2、hex、otc、dec都是针对的整形数据。

3、float类型默认的有效十进制位为6位,小数部分的十进制位宽最大为6位,多余部分四舍五入。

4、cin.get()可以清空缓冲区。

5、在c++中,使用string定义字符串就不会出现缓冲区的问题:getline(cin,string)

put函数专用于输出单个字符的成员函数put  couy.put(ch);


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页