C++的输入输出 I/O流控制

目录

1.I/O

2.控制符

3.控制小数位数

4.设置位宽和填充字符

5.输出八进制数和十六进制数


1.I/O

C++的输入输出cin和cout自己会识别基本的数据类型。

2.控制符

C++对于含小数的实数默认输出六位有效位,这显然不能满足我们的需要。

因此我们要用控制符控制输入输出。

头文件iomanip

控制符 用处
dec 输出十进制形式,默认
hex 输出十六进制形式
oct 输出八进制形式
setfill(c) 设定填充字符,默认空格
setprecision(n) 设定显示小数精度为n位
setw(n) 设定位宽
fixed 固定浮点型表示
scientific 指数表示
left 左对齐
right 右对齐
skipws 忽略前导空白
uppercase 十六进制大写
lowercase 十六进制小写,默认

3.控制小数位数

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	double a=1234.567890125;
	cout<<setprecision(8)<<a<<endl;//输出1234.5678
	cout<<fixed<<a;//输出1234.56789013
}

从中可以知道单用setprecision(n)控制的是总数字数,默认是6位,如果要控制小数位,要与fixed合用。

4.设置位宽和填充字符

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a=666;
	cout<<setw(6)<<a<<endl;//输出   666
	cout<<setfill('0')<<setw(6)<<a;//输出000666
}

setw用来控制显示的宽度,默认不足时填充空格,setfiil可以设置所要填充的字符。

5.输出八进制数和十六进制数

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a=666;
	cout<<dec<<a<<endl;//输出666
	cout<<oct<<a<<endl;//输出1232
	cout<<hex<<a<<endl;//输出29a
	cout<<hex<<uppercase<<a<<endl;//输出29A
}

猜你喜欢

转载自blog.csdn.net/weixin_62264287/article/details/123391849