【第10节 C++IO流】

  • 流:若干字节数据从一端到另一端我们叫做流

流类体系

  • ​ 流对象
  • ​ 流运算符 >> <<

输入输出流

  • ​ ostream类
    cout
    cerr
    clog
    ciin
    字符类的处理

​ 正常的操作

​ 调用成员函数的方式

格式控制字符

  • 包含头文件iomanip

  • 常用的格式控制,一种是调用成员函数方式,一种是流控制字符去做

    设置有效位数:setpreecision(n)

    设置精度:fixed结合setprecision使用

istream 类 cin

#include <iostream>
#include <cstdio>
#include<iomanip>
using namespace std;
void testostream()//output
{
	cout << "标准输出" << endl;//重定向
	cerr << "标准错误输出" << endl;//不能重定向
	clog << "标准错误输出" << endl;//重定向为文件

	//字符类的处理
	cout.put('a');
	cout << 'a' << endl; 
	char c = 'C';
	cout.put(c);
	cout << c << endl;
	cout.write("Iloveyou", 4);//指定长度,超过长度不做输出
	//输入
	cout.put(cin.get());
	//字符串
	while (cin.get() != '\n');
	char str[20] = "";
	cin.getline(str, 20);
	cout.write(str, 20);

	


}
void testiomanip()
{
	//格式控制
	//设置格式
	double pi = 34.12343;
	cout << "设置有效位数是:" << setprecision(4) <<pi<< endl;
	cout <<"有效小数位:"<< fixed << setprecision(4) << pi << endl;
	//cout.precision(4);所有的流控制符都会对应一个成员函数的 方式
	//进制输出
	cout << hex << 32 << endl;//十六进制
	cout << oct << 15 << endl;//8进制
	cout << setbase(16) << 15 << endl;//8-16-
	//默认右对齐
	//cout.sync_with(8);
	cout << setiosflags(ios::left);//ios::right
	cout << setw(8) << "123" << setw(8) << "1234" << setw(8) << "3444" << endl;
	cout << setw(8) << "123" << setw(8) << "1234" << setw(8) << "3444" << endl;

}


int main()
{
	//testostream();
	//freopen("1.txt","r",stdin);
	//int a, b;
	//scanf("%d%d", &a, &b);//输入由文件完成
	1 2 回车
	//freopen("2.txt", "w", stdout);
	//printf("%d",a+b);
	testiomanip();

	return 0;
}

字符流

文件流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值