当前位置:首页 > 分校动态 > 计算机考证

2020年计算机二级C++考点解析:C++流

来源:长理培训发布时间:2020-10-15 20:52:18

10.1C++流的概念

1C++流的体系结构

要利用C++流,必须在程序中包含有关的头文件,以便获得相关流类的声明。为了使用新标准的流,相关头文件的文件名中不得有扩展名。与C++流有关的头文件有:

iostream:要使用cin、cout的预定义流对象进行针对标准设备的I/O操作,须包含此文件。

fstream:要使用文件流对象进行针对磁盘文件的I/O,操作须包含此文件。

strstream:要使用字符串流对象进行针对内存字符串空间的I/O操作,须包含此文件。

iomanip:要使用setw、fixed等大多数操作符,须包含此文件。

注意,为了使用新标准的C++流,还必须在程序文件的开始部分插入下面这个名字空间声明:

usingnamespacestd;

2预定义流对象

C++流有4个预定义的流对象,它们的名称及与之联系的I/O设备如下:

cin标准输入

cout标准输出

cerr标准出错信息输出

clog带缓冲的标准出错信息输出

3提取运算符和插入运算符

输入流类istream重载了运算符,用于数据输入,其原形具有

istream&operator(istream&,类型修饰&);的形式。重载的的功能是从输入流中提取数据赋值给一个变量,因此称之为提取运算符(extractor)。当系统执行cinx操作时,将根据实参x的类型生成相应的提取运算符重载函数的实例并调用该函数,把x引用传送给对应的形参,接着从键盘的输入缓冲区中读入一个值并赋给x(因形参是x的引用)后,返回istream流,以便继续使用提取运算符为下一个变量输入数据。

输出流类ostream重载了运算符,用于数据输出,其原形具有

ostream&operator(ostream&,类型修饰);

的形式。重载的的功能是把表达式的值插入到输出流中,因此称之为插入运算符(inserter)。当系统执行coutx操作时,首先根据x值的类型调用相应的插入运算符重载函数,把x的值传送给对应的形参,接着执行函数体,把x的值(亦即形参的值)输出到显示器屏幕上,在当前屏幕光标位置起显示出来,然后返回ostream流,以便继续使用插入运算符输出下一个表达式的值。

上面格式中的“类型修饰符”是指char、int、double、char*、bool等等C++中固有类型的修饰符。也就是说,只要输入输出的数据属于这些C++固有类型中的一种,就可以直接使用或完成输入输出任务。在完成输入输出任务后,和把参数(即流对象的引用)返回,因此这两个运算符可以连续使用,如cinabc;等。

4有格式输入输出和无格式输入输出

利用C++流既可进行有格式输入输出,也可进行无格式输入输出。

计算机所处理的数据都有内部存储格式和外部表现形式的区分,因此在输入输出过程中必须进行适当的转换,有格式输入输出就是完成这一任务的。有格式输入输出针对的是键盘、显示器、打印机等字符设备以及磁盘中的文本文件。对于有格式输入输出,无论输入输出的数据是什么数据类型,体现在外部设备上都是字符序列。

对于无格式输入输出,数据的内部存储存格式与外部存储格式完全相同,因此无格式输入输出只能针对磁盘文件(或磁带、光盘上的文件),而且这样的文件通常不能用一般的文本编辑器查看。进行无格式输入输出需调用流对象的专门的成员函数实现。

5操作符

C++流提供了提取运算符和插入运算符,使得输入输出的表达简洁、形象、直观,这能体现C++流的风格。C++流还提供了很多输入、输出或控制输入输出的成员函数,须通过.或-加以调用,不能与运算符或配合使用,因而与C++流的整体风格很不协调。为此,C++提供了一系列可与运算符或配合使用的特殊函数,称为操作符(manipulator)。每个操作符都与一个具体的函数相联系,使得或可间接地通过它们调用与之联系的函数,完成相应的输入、输出功能或输入输出控制功能。前面经常用到的endl、setw等就是操作符。有了操作符,C++流操作在风格上就更加统一,输入输出操作也显得更加流畅。

责编:胡梦瑶

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部