流是什么
流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具。在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的,而不用关心流的另一头数据的真正流向。流不但可以处理文件,还可以处理动态内存、网络数据等多种数据形式。如果你对流的操作非常熟练,在程序中利用流的方便性,写起程序会大大提高效率的。
——百科
流又是类。
各种流的关系
cin,cout 与 <<,>>
cin
cin,一个istream对象,从标准输入读取数据。
利用输入运算符>>,它接受一个istream作为其左侧运算对象,接受一个对象作为其右侧运算对象。它从给定的istream读入数据,并存入给定的对象。返回其左侧运算对象作为其计算结果。
cout
cout,一个ostream对象。向标准输出写入数据。
利用输出运算符<<,它接受一个ostream作为其左侧运算对象,接受一个对象作为其右侧运算对象。右侧的对象是将要打印的值,将给定的值写入ostream对象中。输出结果为左侧运算对象。
理解
从输入读取数据
向输出写入数据
理解这两句话,进行其他操作。
fstream
文件流是继承自iostream。与iostream、sstream共同作为头文件构成IO标准库。
使用fstream定义文件流,与文件相关联,可以进行文件操作
ifstream
写文件
1.声明流
2.使用流打开文件
3.使用>>运算符
4.关闭流
#include <iostream>
#include <fstream>
using namespace std;
int main () {
fstream mycout;
mycout.open("data.txt");
char p[100];
int i = 0;
while ( (p[i] = getchar()) != '#') {
mycout << p[i];
++i;
}
mycout.close();
}
ifstream只写,可用fstream替换。
ofstream
读文件
1.声明流
2.将流与文件绑定
3.使用<<运算符
4.关闭流
#include <iostream>
#include <fstream>
using namespace std;
int main () {
fstream file;
file.open("data.txt");
char p[100];
file >> p;
cout << p;
file.close();
}
<