C++ Primer笔记(二)标准IO库

1.简单的IO继承层次

Io类型在三个独立的头文件中定义:iostream定义读写控制台窗口的类型;fstream定义读写已命名文件的类型;而sstream定义的类型用于读写存储在内存中的string对象。

头文件

类型

iostream

 

istream从流中读取

ostream写到流中去

iostream对流进行读写 ,istreamostream继承而来的

fstream

 

ifstream从文件流中读取,由istream派生而来

ofstream 写到文件中去,由ostream派生而来

fstream读写文件,由iostream派生而来

sstream

 

istringstreamstring对象中读取,由istream派生而来

ostringstream写到string对象中,由ostream派生而来

stringstreamstring对象进行读写,由iostream派生而来

 

2.IO对象不可复制或赋值

由于某些原因,标准库类型不允许做赋值或赋值操作。例如形参或返回值类型不能为流类型。若需要传递活返回io对象,则必须传递或返回指向该对象的指针或引用。对于IO对象的读写会改变它的状态,因此引用必须是非const类型。

3.文件模式

文件模式

in

打开文件做读操作

out

打开文件做写操作

app

在每次写之前找到文件尾

ate

打开文件后立即将文件定位在文件尾部

trunc

打开文件时清空已存在的文件流

binary

以二进制模式进行IO操作

out、trunc和app模式只能用于指定与ofstream或fstream对象关联的文件;in模式只能用于指定与ifstream和fstream对象关联的文件。所有的文件都可以用ate或binary模式打开。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值