一.C++的输入输出操作
- cout语句
-
- 格式:cout<<表达式1<<表达式2<<……<<表达式n;
- 不能用一个插入运算符“<<”插入多个输出项
- 用cout输出时,用户不必通知计算机按何种类型输出,系统会自动判别输出数据的类型,使输出的数据按相应的类型输出。
- cin语句
-
- 格式:cin>>表达式1>>表达式2>>……>>表达式n;
- 在用cin输入时,系统会根据变量的类型从输入流中提取相应长度的字节
系统把空格作为数据间的分隔符,不予提取,因此不能用cin语句空格和回车换行符输入给字符变量
流操作的控制
调整字符宽度:
在程序实际输出过程中,往往输出时每行字符的个数不同无法对齐,使用width()调整字符宽度
- 方法:int width(); //返回字段宽度的当前设置
int width(i); //将字段宽度设置为i个空格,并返回之前的字符宽度
-
说明:
- width()是成员方法,因此必须使用对象cout来调用它
- width()方法只影响一个显示,然后字段宽度恢复为默认值
- C++永远不会截短数据,试图在宽度较小的字段中输出一个较大位数的值,将增加字段宽度
- cout根据width参数通过空格来填充字段,空格被插入到值的左侧,整个字段默认是右对齐
填充字符:
-
默认情况下,cout用空格填充字段中未被使用的部分,可以用fill()来改变填充字符
- 方法:cout.fill(‘*’)
- 说明:
- 新填充的字符将一直有效,直到更改它为止
设置浮点数的显示精度:
-
-
浮点数精度取决于输出模式。在默认模式下,它指的是显示的总位数。C++默认精度是6,precision()使得能够选择其他精度值
- 方法:cout.precision(2);
- 说明:
- 精度设置一直有效,直到被重新设置
-
其他格式设置:
-
-
-
ios_base类有一个受保护的数据成员,其中的各位分别控制这格式化的各个方面,例如是否显示末尾0;setf()可以设置这些格式常量。
-
- 方法:cout.setf(ios_base:showpos);
-
- 修改进制显示:
-
要控制整数以十进制、十六进制还是八进制显示,可使用dec、hex和oct控制符
- 方法:cout<<hex
-
-
hex(cout)