中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第22讲 C++的输入和输出

第22讲C+的输入和输出 教学目的和要求: 了解I/0标准流类。 掌握格式化输入输出及重载输入输出运算符。 教学内容提要: 1、I/0标准流类; 2、文件流类; 3、预定义类型的输入输出; 4、用户自定义类型的输入输出 教学重点:格式化输入输出及重载输入输出运算符。 教学难点:格式化输入输出及重载输入输出运算符。 教学进度:P242P261 教学过程:
第22讲 C++的输入和输出 教学目的和要求: 了解I/O标准流类。 掌握格式化输入输出及重载输入输出运算符。 教学内容提要: 1、I/O标准流类; 2、文件流类; 3、预定义类型的输入输出; 4、用户自定义类型的输入输出 教学重点:格式化输入输出及重载输入输出运算符。 教学难点:格式化输入输出及重载输入输出运算符。 教学进度:P242~P261 教学过程:

2.1(+为何建立自己的输入输出系统 因为在C++中用户需要定义众多的自定义类型,但是C语 言的输入输出系统不支持用户自定义的类型。请看下面的 类 class my class( int i: float f: char *str: s obi 对此类类型,在C语言中下面的语句是不能接受的: printf (" my class " obj) ●C+的流类比C的输入输出函数具有更大的优越性
22.1 C++为何建立自己的输入输出系统 • 因为在C++中用户需要定义众多的自定义类型,但是C语 言的输入输出系统不支持用户自定义的类型。请看下面的 类: class my_class{ int i; float f; char *str; } obj; 对此类类型,在C语言中下面的语句是不能接受的: printf("% my_class",obj); • C++的流类比C的输入输出函数具有更大的优越性

22.2C+的流库及其基本结构 22.2.1C++的流 在C+中,流类是为输入输出提供的一组类, 它们都放在流库中。 流总是与某一设备相联系的(例如键盘、屏 幕或硬盘等),通过使用流类中定义的方法,就 可以完成对这些设备的输入输出操作 流具有方向性:与输入设备(如键盘)相联系 的流称为输入流;与输出设备(如屏幕)相联系的 流称为输出流;与输入输出设备(如磁盘)相联系 的流称为输入输出流
22.2 C++的流库及其基本结构 22.2.1 C++的流 在C++中,流类是为输入输出提供的一组类, 它们都放在流库中。 流总是与某一设备相联系的(例如键盘、屏 幕或硬盘等),通过使用流类中定义的方法,就 可以完成对这些设备的输入输出操作。 流具有方向性:与输入设备(如键盘)相联系 的流称为输入流;与输出设备(如屏幕)相联系的 流称为输出流;与输入输出设备(如磁盘)相联系 的流称为输入输出流

C+中包含几个预定义的流对象, ●标准输入流 cin与标准输入设备相关联 ●标准输出流 cout与标准输出设备相关联 ●非缓冲型的标准出错流cerr与标准错误输出设备 相关联(非缓冲方式) ·缓冲型的标准出错流clog与标准错误输出设备 相关联(缓冲方式) 在缺省情况下,指定的标准输出设备是屏幕,标 准输入设备是键盘
C++中包含几个预定义的流对象,: • 标准输入流 cin 与标准输入设备相关联 • 标准输出流 cout 与标准输出设备相关联 • 非缓冲型的标准出错流 cerr 与标准错误输出设备 相关联(非缓冲方式) • 缓冲型的标准出错流 clog 与标准错误输出设备 相关联(缓冲方式) 在缺省情况下,指定的标准输出设备是屏幕,标 准输入设备是键盘

22.2.2流类库 C++流类库具有两个平行的基类,即 streambuf类和ios类,所有其他的流类都是 从它们直接或间接地派生出来的 其中 ios类为输入输出操作在用户一方的接口, 负责高层操作: streambuf类为输入输出操作在物理设备 方的接口,负责低层操作
22.2.2 流类库 C++流类库具有两个平行的基类,即 streambuf类和ios类,所有其他的流类都是 从它们直接或间接地派生出来的 其中: ios类为输入输出操作在用户一方的接口, 负责高层操作: streambuf类为输入输出操作在物理设备 一方的接口,负责低层操作

istream ostream ifstream ofstream istrstream ostrstream istream withassign ostream withassign iostream fstream stdiostream strstream streambuf filebuf stdiobuf strstreambuf 图各类之间的关系
ios istream ostream istrstream ifstream istream_withassign ostream_withassign ofstream ostrstream iostream fstream stdiostream strstream streambuf filebuf stdiobuf strstreambuf 图 各类之间的关系

22.3预定义类型的输入输出 22.3.1无格式输入输出 基于C++类库的输入输出需使用两个流对 象cin和cout,还要用与之相配套的两个输入 输出运算符“>》〃和“>变量 //输人 cout<常量或变量;//输出
22.3 预定义类型的输入输出 22.3.1无格式输入输出 基于C++类库的输入输出需使用两个流对 象cin和cout,还要用与之相配套的两个输入 输出运算符“>>”和“>变量; // 输人 cout<< 常量或变量; // 输出

输出运算符 从运算符角度来看,输出通过输出运算符“<〃 来完成的,输出运算符“<<〃也称插入运算符, 它是一个双目运算符,有两个操作数,左操作数 为 ostream类的一个对象(如cout),右操作数为 个系统预定义类型的常量或变量。例如 cout< This is a string. n 完成的功能为写字符串“ This is a string.”到 流对象cout,cout为标准输出流,通常为屏幕
1. 输出运算符 从运算符角度来看,输出通过输出运算符“<<” 来完成的,输出运算符“<<” 也称插入运算符, 它是一个双目运算符,有两个操作数,左操作数 为ostream类的一个对象(如cout),右操作数为 一个系统预定义类型的常量或变量。例如 cout<<"This is a string.\n"; 完成的功能为写字符串“This is a string. ”到 流对象cout, cout为标准输出流,通常为屏幕

2.输入运算符 从运算符角度来看,输入操作通过输入 运算符“>〉〃来完成。输入运算符“>>〃 也称提取运算符,它也是一个双目运算符, 有两个操作数,左面的操作数是 astream 类的一个对象(cin),右面的操作数是系 统预定义的任何数据类型的变量。例如 intx: C1n>>X, 此时,用户从键盘输入的数值会自动 地转换为变量x的类型,并存入变量x内
2. 输入运算符 从运算符角度来看,输入操作通过输入 运算符“>>”来完成。输入运算符“>>” 也称提取运算符,它也是一个双目运算符, 有两个操作数,左面的操作数是istream 类的一个对象(cin),右面的操作数是系 统预定义的任何数据类型的变量。例如: int x; cin>>x; 此时,用户从键盘输入的数值会自动 地转换为变量x的类型,并存入变量x内

22.3.2格式化输入输出 C++提供了两种进行格式控制的方 法 种是使用io类中有关格式控制的 成员函数进行格式控制; 另一种是使用称为操纵符的特殊类 型的函数进行格式控制
22.3.2 格式化输入输出 C++提供了两种进行格式控制的方 法: 一种是使用ios类中有关格式控制的 成员函数进行格式控制; 另一种是使用称为操纵符的特殊类 型的函数进行格式控制
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第21讲 模板应用.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第21讲 用指针处理链表.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第20讲 模板.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第1讲 面向对象程序设计概述.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第19讲 几种常见的运算符重载及类型转换函数.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第18讲 运算符重载.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第17讲 抽象类.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第16讲 多态性与虚.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第15讲 赋值兼容.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第14讲 多继承.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第13讲 派生的构造函数和析构函数.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第12讲 派生类的概念.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第11讲 静态成员及友元.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第10讲 对象数组和指针及对象作为函数参数.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第10章 Visual C++编程实例.ppt
- 《单片机相关电子图书资料》第十一章 PIC 单片机的 C 语言编程.pdf
- 《单片机相关电子图书资料》精彩51单片机教程.pdf
- 《单片机相关电子图书资料》51单片机C编程.pdf
- 山东大学:《Visual C++程序设计》第4章 C++的流程控制语句(张晓如).ppt
- 山东大学:《Visual C++程序设计》第10章 构造函数和析构函数(张晓如).ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第23讲 文件输入和输出.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第24讲 综合应用举例.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第2讲 C++基础.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第3讲 基本数据类型.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第4讲 函数.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第5讲 函数重载和变量的作用域.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第6讲 动态内存分配和引用.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第7讲 类和对象的声明.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第8讲 构造函数和析构函数.ppt
- 中国铁道出版社:《C++面向对象程序设计》课程教学资源(PPT课件讲稿)第9讲 拷贝构造函数和对象成员.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第一章 单片机基础知识.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第三章 MCS-51单片机指令系统及汇编语言程序设计.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第五章 MCS-51系统扩展技术.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第四章 MCS-51的片内接口.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第二章 MCS-51单片机结构原理.ppt
- 山东商业职业技术学院:《Visual Basic可视化程序设计》课程电子教案(PPT课件)目录(主讲教师:徐红、姚丽娟、王轶凤).ppt
- 山东商业职业技术学院:《Visual Basic可视化程序设计》课程电子教案(PPT课件)第一章 VB可视化程序设计概述.ppt
- 山东商业职业技术学院:《Visual Basic可视化程序设计》课程电子教案(PPT课件)第七章 数据库应用.ppt
- 山东商业职业技术学院:《Visual Basic可视化程序设计》课程电子教案(PPT课件)第三章 常用控件应用.ppt
- 山东商业职业技术学院:《Visual Basic可视化程序设计》课程电子教案(PPT课件)第二章 VB可视化程序设计基础.ppt