在c语言中,字符串topt65的长度是,谭浩强c__程序设计第13章.ppt

谭浩强c__程序设计第13章

第13章 输入输出流 13.1 C++的输入和输出 13.2 标准输出流 13.3 标准输入流 13.4 文件操作与文件流 13.5 字符串流 13.1 C++的输入和输出 13.1.1 输入输出的含义 以前所用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上。从操作系统的角度看,每一个与主机相连的输入输出设备都被看作一个文件。除了以终端为对象进行输入和输出外,还经常用磁盘(光盘)作为输入输出对象,磁盘文件既可以作为输入文件,也可以作为输出文件。 程序的输入指的是从输入文件将数据传送给程序,程序的输出指的是从程序将数据传送给输出文件。C++的输入与输出包括以下3方面的内容: (1) 对系统指定的标准设备的输入和输出。即从键盘输入数据,输出到显示器屏幕。这种输入输出称为标准的输入输出,简称标准I/O。 (2) 以外存磁盘文件为对象进行输入和输出,即从磁盘文件输入数据,数据输出到磁盘文件。以外存文件为对象的输入输出称为文件的输入输出,简称文件I/O。 (3) 对内存中指定的空间进行输入和输出。通常指定一个字符数组作为存储空间(实际上可以利用该空间存储任何信息)。这种输入和输出称为字符串输入输出,简称串I/O。 C++采取不同的方法来实现以上3种输入输出。 为了实现数据的有效流动,C++系统提供了庞大的I/O类库,调用不同的类去实现不同的功能。 13.1.2 C++的I/O对C的发展——类型安全和可扩展性 在C语言中,用printf和scanf进行输入输出,往往不能保证所输入输出的数据是可靠的、安全的。 在C++的输入输出中,编译系统对数据类型进行严格的检查,凡是类型不正确的数据都不可能通过编译。因此C++的I/O操作是类型安全(type safe)的。 C++的I/O操作是可扩展的,不仅可以用来输入输出标准类型的数据,也可以用于用户自定义类型的数据。C++对标准类型的数据和对用户声明类型数据的输入输出,采用同样的方法处理。 C++通过I/O类库来实现丰富的I/O功能。C++的输入输出优于C语言中的printf和scanf,但是比较复杂,要掌握许多细节。 13.1.3 C++的输入输出流 C++的输入输出流是指由若干字节组成的字节序列,这些字节中的数据按顺序从一个对象传送到另一对象。流表示了信息从源到目的端的流动。在输入操作时,字节流从输入设备(如键盘、磁盘)流向内存,在输出操作时,字节流从内存流向输出设备(如屏幕、打印机、磁盘等)。流中的内容可以是ASCII字符、二进制形式的数据、图形图像、数字音频视频或其他形式的信息。 实际上,在内存中为每一个数据流开辟一个内存缓冲区,用来存放流中的数据。流是与内存缓冲区相对应的,或者说,缓冲区中的数据就是流。 在C++中,输入输出流被定义为类。C++的I/O库中的类称为流类(stream class)。用流类定义的对象称为流对象。 cout和cin并不是C++语言中提供的语句,它们是iostream类的对象,在未学习类和对象时,在不致引起误解的前提下,为叙述方便,把它们称为cout语句和cin语句。 在学习了类和对象后,我们对C++的输入输出应当有更深刻的认识。 1. iostream类库中有关的类 C++编译系统提供了用于输入输出的iostream类库。iostream这个单词是由3个部分组成的,即i-o-stream,意为输入输出流。在iostream类库中包含许多用于输入输出的类。常用的见书中表13.1。 ios是抽象基类,由它派生出istream类和ostream类,两个类名中第1个字母i和o分别代表输入(input)和输出(output)。istream类支持输入操作,ostream类支持输出操作,iostream类支持输入输出操作。 iostream类是从istream类和ostream类通过多重继承而派生的类。其继承层次见图13.1表示。 图13.1 C++对文件的输入输出需要用ifstream和ofstream类,两个类名中第1个字母i和o分别代表输入和输出,第2个字母f代表文件(file)。ifstream支持对文件的输入操作,ofstream支持对文件的输出操作。类ifstream继承了类istream,类ofstream继承了类ostream,类fstream继承了类iostream。见图13.2。 图13.2 I/O类库中还有其他类,见图13.3。 图13.3 2. 与iostream类库有关的头文件 iostream类库中不同的类的声明被放在不同的头文件中,用户在自己的程序中用#include命令包含了有关的头文件就相当于在本程序中声明了所需要用到的类。可以换一种说法:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/295826.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

世界大百科全书!耶鲁大学教授再出神作!用1000幅图片,讲明白45亿年历史......

▲点击查看哈佛大学本杰明教授曾说:“越是到了高等教育的阶段,人们就越重视从历史中总结经验,尤其是精英阶段。很多人都想好好读读历史,但是一直以来,读历史都有一个问题:看着满满都是字的大部头&#xff0…

Hostonly cookie是什么鬼?

点击上方蓝字关注我们吧知道cookie hostonly属性的请举手🧐01Cookie常见姿势、疑难梳理目前w3c定义浏览器存放每个cookie需要包含以下字段:cookie属性基本描述举例备注namevaluecookie键值对ida3fWaexpirescookie过期时间expiresTue, 10-Jul-2013 08:30:…

Android之文件读写

一、基本概念 在Android应用中保存文件,保存的位置有两处 ①手机自带的存储空间,较小(如200M),适合保存一些小文件,Android中保存位置在data/data/应用包名/files目录 ②外存储设备如SD卡,较大,适合保存大文件如视频,Android中保存位置在mnt/sdcard目录,保存在sdcar…

系统即将关机请保存关机是由nt_设置Windows电脑自动关机

为了减少长时间沉迷电脑而忘记时间,设置Windows电脑自动关机是必要的事。 在我的电脑里,每到晚上10点都会自动关机。当然不会立刻关机,而是设置了1分钟的预留时间给自己保存一些文档资料。 Windows内建的Shutdown指令让人很方便的对这些进行操…

华为网络设备上的常用安全技术(一)

安全技术1:ACL 说明:ACL (Access Control List,访问控制列表)主要用来实现流识别功能。网络设备为过滤数据包,需要配置一系列的匹配规则,以识别需要过滤的报文。在识别出特定的报文之后&#xf…

【F12一下,看看页面里的第一行】——说说浏览器兼容性模式

面试官:请你谈谈标准(Standards)模式、怪异(Quirks)模式、准标准(Almost Standards)模式,当你打开IE9时候会看见,浏览器模式,文档模式,兼容性视图,这些又是什么? 尼玛啊......这些都是什么鸟东西…

java学习第七天

2019独角兽企业重金招聘Python工程师标准>>> 内部类 在类的内部也可以定义另一个类 ------------------------------------------------------------//类嵌套类,类中带有类//内部类跟方法一样,可以使用全部的访问权限修饰符,用法是一样的 接口 Int…

大一计算机课实训总结1000字,大一计算机实训报告.doc

文档介绍:大一计算机实训报告.doc大一计算机实训报告总结及相关经验当迈入中南大学的第一刻时,我知道我的新的生活开始了。而不知不觉第一学期即将在漫漫寒冬中结束,计算机课上有很多感受,是应该对自己所学有个总结的时候了。计算机应用是实践性很强的课程,它要求我…

并不是每个女生都能穿出这种效果......

1 阿姨,我需要一个你▼2 像极了是悬空的...▼3 放弃吧,整点阳间的...▼4 一个人如何自拍?(Twitter:Kskb_Tsuki)▼5 哥哥表示睡着了就把她饼干吃了...(via.dy俩小小赵)▼6 敲法器…

手把手教你学Dapr - 1. .Net开发者的大时代

Dapr全称Distributed Application Runtime,分布式应用运行时Dapr的口号简化云原生应用开发,聚焦在应用的核心逻辑,让代码简单、可移植Dapr的目标最佳实践的构建块任何语言或框架一致性,可移植,开放的API采纳标准可扩展…

Andorid之网络通信框架Volley使用和总结

Volley Volley 是 Google 推出的 Android 异步网络请求框架和图片加载框架。在 Google I/O 2013 大会上发布。 从名字由来和配图中无数急促的火箭可以看出 Volley 的特点:特别适合数据量小,通信频繁的网络操作

如何进行服务器选购[转]

各大服务器厂商为了更突出产品热点:开始在服务、方案方面进行花样翻新、包装,但万变不离其中,不管厂商们怎么样包装,只要我们抓住重点分析,希望下面的文章能够为您提供一些参考与帮助:详情点击:…

闲鱼有微信小程序吗_微信小程序商品展示页面(仿咸鱼)

项目中做了一个商品发布展示的页面,记录下来解决问题:想在setData中更改数组具体下标中的某个值let one "lowMoney[" 0 "].money";this.setData({[one]: (product.currentPrice * 0.1).toFixed(2), //1折})快去发布商品吧~~~已下…

objective-c中的static

在方法之外定义的变量不仅是全局变量,还是外部变量.但是很多场合,我们只需要定义为全局变量,并不是外部变量.也就是说希望定义的全局变量只在特定文件中是全局的,这个变量也只有在特定的类中的方法能访问,再也没有其他方法需要访问这个变量了. 这就引出了static. 被static修饰过…

电子计算机制作探测,如何自己制作一个简易的金属探测器

这是一个金属探测电路,它可以隔着地毯探测出地毯下的硬币或金属片。这个小装置很适合动手自制。一、元器件的准备电路中的NPN型三极管型号为9014,三极管VT1的放大倍数不要太大,这样可以提高电路的灵敏度。VD1-VD2为1N4148。电阻均为1/8W。金属…

“对不起,我们只招父母毕业于名牌院校的孩子”:最可怕的,是你还以为学历不重要...

全世界只有3.14 % 的人关注了爆炸吧知识1 近日,有一条新闻引发网友热议。成都某小学入学面试,要求家长除了带照片和身份证件之外,还要带“父母学历证书原件及复印件”。网上有种说法,该小学筛选的标准是父母毕业于211院校。后来眼…

.NET 6 对 StackOverflow 的优化

.NET 6 对 StackOverflow 的优化Intro去年写了一系列的傻逼代码, 其中有一篇 写了多年代码,你会 StackOverflow 吗,昨天一不小心又写了一个 StackOverflow 代码。。然后想把新的代码加到原来 StackOverflow 的示例中,把原来的示例项目改成了 …

【原】python中文文本挖掘资料集合

这些网址是我在学习python中文文本挖掘时觉得比较好的网站,记录一下,后期也会不定期添加:1.http://www.52nlp.cn/python-%E7%BD%91%E9%A1%B5%E7%88%AC%E8%99%AB-%E6%96%87%E6%9C%AC%E5%A4%84%E7%90%86-%E7%A7%91%E5%AD%A6%E8%AE%A1%E7%AE%97-…

Android之从网络上获取图片的两种方式讲解:thread+handle和AsyncTask方式

从网络上获取图片是一个比较耗时的操作,放在主线程会导致阻塞主线程,响应超时,所以我们不能把它放在主线程里操作,必须放在一个子线程里,我打算采用两种方式去实现。1、采用thread去获取图片,获取到后通过handle把消息发送到与主线程绑定的消息队列中(也就是主线程的loo…

freeware

http://www.nirsoft.net/utils/iconsext.html转载于:https://www.cnblogs.com/androidme/archive/2013/03/13/2957509.html