C++学习(十)输入输出和文件

本文介绍了C++中的流控制,包括流的继承,如cin、cout、cerr和clog的使用。讲解了如何重定向输入输出流,以及标准输出流cout的控制。接着详细阐述了文件的输入输出,包括打开文件、写入和读取文件的基本操作,以及二进制文件的读写方法。
摘要由CSDN通过智能技术生成

1 流的控制&&流的继承

1.1 流控制

类名 在哪个头文件中声明
ios iostream
istream,ostream,iostream iostream
ifstream,ofstream,fstram fstream
istrstream,ostrstream,strstream strstream
格式化I/O iomanip

1.2 类继承

在这里插入图片描述
流对象
cin: 标准输入流
cout:标准输出流
cerr: 标准错误流。可显示错误信息,关联到输出设备,这个流没有被缓冲,意味着信息可直接发送到屏幕。
clog:标准错误流,关联到标准 输出设备,这个流被缓冲。

2.重定向

重定向:把 原来的 cin 从键盘输入 改为从文件输入。把 原来的 cout 向屏幕输出 改为输出到文件。例如: cin>>line; 原来要从键盘拍入。现在自动到某文件读取,语句还是 cin>>line; 不变。cout << line << endl; 原来向屏幕输出,现在自动写到某文件里,语句还是cout << line << endl;不变

C++ 实现方法:
#include <iostream>
#include <ostream>
#include <fstream>
using namespace std;
main()
{
	ifstream fin("input.txt"); // 已有输入文件
	ofstream fout("output.txt"); //输出文件
	streambuf *cinbackup;
	streambuf *coutbackup;
	coutbackup = cout.rdbuf(fout.rdbuf()); //用 rdbuf() 重新定向
	cinbackup = cin.rdbuf(fin.rdbuf()); //用 rdbuf() 重新定向
	cout << "Hello world" << endl; //去文件也
	char line[100];
	cin >> line; //从input.txt文件读入
	cout << line << endl; //写入 output.txt
	// restore standard streambuf
	cin.rdbuf(cinbackup); // 取消,
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值