C++语言程序设计 第十一章流类库与输入/输出 清华大学计算机与信息管理中心 郑莉
第十一章 流类库与输入/输出 清华大学计算机与信息管理中心 郑 莉 C++语言程序设计
本章主要内率 /O流的概念 输出流 输入流 ●输入输出流 休息
前一页 休息 2 本章主要内容 ⚫ I/O流的概念 ⚫ 输出流 ⚫ 输入流 ⚫ 输入/输出流
10流的概念 ●当程序与外界环境进行信息交换时,存在着两个 对象,一个是程序中的对象,另一个是文件对象。 流是一种抽象,它负责在数据的生产者和数据的 消费者之间建立联系,并管理数据的流动。 程序建立一个流对象,并指定这个流对象与某个 文件对象建立连接,程序操作流对象,流对象通 过文件系统对所连接的文件对象产生作用。 ●读操作在流数据抽象中被称为(从流中)提取, 写操作被称为(向流中)插入。 了一页休息 3
前一页 休息 3 I/O流的概念 ⚫ 当程序与外界环境进行信息交换时,存在着两个 对象,一个是程序中的对象,另一个是文件对象。 ⚫ 流是一种抽象,它负责在数据的生产者和数据的 消费者之间建立联系,并管理数据的流动。 ⚫ 程序建立一个流对象,并指定这个流对象与某个 文件对象建立连接,程序操作流对象,流对象通 过文件系统对所连接的文件对象产生作用。 ⚫ 读操作在流数据抽象中被称为(从流中)提取, 写操作被称为(向流中)插入
输出流 最重要的三个输出流是 ostream ofstream ostrstream。 休息
前一页 休息 4 输出流 ⚫ 最重要的三个输出流是 – ostream – ofstream – ostrstream
输出流对泉 输通过派生类 ostream withassign支 流持预先定义的流对象 cout标准输出 ce『^标准错误输出,没有缓冲,发送给 它的内容立即被输出。 clog类似于cer,但是有缓冲,缓冲区 满时被输出 大 休息
前一页 休息 5 输出流对象 ⚫ 通过派生类ostream_withassign支 持预先定义的流对象: – cout 标准输出 – cerr 标准错误输出,没有缓冲,发送给 它的内容立即被输出。 – clog 类似于cerr,但是有缓冲,缓冲区 满时被输出。 输 出 流
输出流对泉 输 ● ofstream类支持磁盘文件输出 构造一个 ofstream类的对象。在打开文件 流之前或之后可以指定 ofstream对象接受二 进制或文本模式数据 休息
前一页 休息 6 输出流对象 ⚫ ofstream类支持磁盘文件输出 – 构造一个ofstream类的对象。在打开文件 之前或之后可以指定ofstream对象接受二 进制或文本模式数据。 输 出 流
输出流对泉 输。如果在构造函数中指定一个文件名,当 出构造这个文件时该文件是自动打开的 流 ofstream my File( filename", iosmode) 休息
前一页 休息 7 输出流对象 ⚫ 如果在构造函数中指定一个文件名,当 构造这个文件时该文件是自动打开的 –ofstream myFile("filename",iosmode); 输 出 流
输出流对泉 输。可以在调用缺省构造函数之后使用 open成员函数打开文件 流 ofstream myFile //声明一个静态输出文件流对象 my File open("filename", iosmode) //打开文件,使流对象与文件建立联系 ofstreamk pmy File= new ofstream //建立一个动态的输出文件流对象 pmyFile->open("filename", iosmode)y, //打开文件,使流对象与文件建立联系 休息
前一页 休息 8 输出流对象 ⚫ 可以在调用缺省构造函数之后使用 open成员函数打开文件 ofstream myFile; //声明一个静态输出文件流对象 myFile.open("filename",iosmode); //打开文件,使流对象与文件建立联系 ofstream* pmyFile = new ofstream; //建立一个动态的输出文件流对象 pmyFile->open("filename",iosmode); //打开文件,使流对象与文件建立联系 输 出 流
插入运算符(<<) 输。插入(<运算符是所有标准C+数据 类型预先设计的。 流。用于传送字节到一个输出流对象。 休息
前一页 休息 10 插入运算符(<<) ⚫ 插入(<<)运算符是所有标准C++数据 类型预先设计的。 ⚫ 用于传送字节到一个输出流对象。 输 出 流
控制输出格式 输。控制输出宽度 流 为了调整输出,可以通过在流中放入 setw操纵符或调用wdth成员函数为每个 项指定输出宽度。 休息
前一页 休息 11 控制输出格式 ⚫ 控制输出宽度 – 为了调整输出,可以通过在流中放入 setw操纵符或调用width成员函数为每个 项指定输出宽度。 输 出 流