C++笔记--输入输出流

Posted ljt2724960661

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++笔记--输入输出流相关的知识,希望对你有一定的参考价值。

C++本身不提供输入输出操作,由标准库提供;这些功能支持程序中独立于设备的输入输出操作。流是程序中输入或输出设备的抽象表示,输入或输出设备是数据的来源或目的地。可以把流看作在外部设备和计算机内存之间流动的一系列字节。基本上,所有的输入和输出都是在某个外部设备上读取或写入的一系列字节。

数据传输模式
        在流中传入和传出数据有两种模式:文本模式和二进制模式。在文本模式中,数据解释为一系列字符,这些字符组织为一行或多行文本,并用换行符‘\\n’断开。在文本模式中,当字符在物理设备上读写时,流可以传送换行符。流是否传送字符,以及字符如何修改都与系统有关。在二进制模式中,不允许在流中传送字符,而是传送没有经过转换的原字节。

标准流

标准流在std命名空间中定义为流类对象。这些定义在头文件iostream中:

extern istream cin;
extern ostream cout:
extern ostream cerr;
extern ostream clog;

头文件iostream也定义了对应的多字节字符流对象:

extern wistream wcin;
extern wostream wcout;
extern wostream wcerr;
extern wostream wclog;

文件流

三种流类对象可以用于处理文件:ifstream、ofstream和 fstream。这三个类的基类分别是istream、ostream和iostream。istream对象表示-一个可以读取的文件流,ofstream对象表示一个可以写入的文件输出流,fstream对象表示一一个可以读写的文件流。

看个栗子:
 

#include<iostream>
#include<fstream>
#include<string>
#include <iomanip>
using namespace std;


void read_file() 
	string name;
	int age;
	ifstream infile;
	infile.open("user.txt");

	while (1) 
		infile >> name;
		if (infile.eof()) 
			break;
		
		cout << name << "\\t";
		
		infile >> age;
		cout << age << endl;
	

	infile.close();



void write_file() 
	/*string name;
	int age;

	ofstream outfile;

	outfile.open("user.txt", ios::out | ios::trunc);

	while (1) 
		cout << " " << endl;
		cout << "";
		cin >> name;
		if (cin.eof()) 
			break;
		
		outfile << name << "\\t";

		cout << "请输入年龄: ";
		cin >> age;
		outfile << age << endl;
	

	outfile.close();*/


void write_file2() 
	const int max = 100;
	long primes[max] = 2,3,5;
	int count = 3;
	long trial = 5;
	bool isprime = true;


	do 
		trial += 2;
		int i = 0;

		do 
		
		 while (++i < count && isprime);

		if (isprime)
			*(primes + count++) - trial;

	 while (count < max);

	std::ofstream outFile("user.txt");

	for (int i = 0; i < max; i++) 
		if (i % 5 == 0)
			outFile << std::endl;
		outFile << std::setw(10) << *(primes + i);
	



int main() 

	write_file2();
	return 0;

以上是关于C++笔记--输入输出流的主要内容,如果未能解决你的问题,请参考以下文章

C++学习笔记C++输入输出流

C/C++编程笔记:C++中的标准输入流 & 标准输出流

C++中输入输出流及文件流操作笔记

C++基础学习笔记C++的输入输出流及缺省参数

C++学习笔记55:流类库与输入输出

Java 输入输出——流