C++IO流-标准输入与输出

本文介绍了C++中处理输入输出流的类,如istream、ostream、iostream及其派生类,重点讲解了cin、cout、cerr的使用,以及ifstream、ofstream、fstream文件流的操作。提到了不同打开文件模式,并阐述了cin的各种读取方法,包括get(), getline(), read(), write()等。同时,讨论了如何清空输入缓冲区和控制格式。" 116565987,9198103,Kubernetes全方位指南,"['容器', 'Kubernetes', '集群', '微服务', 'DevOps']
摘要由CSDN通过智能技术生成

一、I/O类关系

在C++不直接处理输入输出,而是通过标准库中的I/O流类来进行处理。标准库主要有下面一些类:istream,ostream,iostream,ifstream,ofstream,fstream等等。其类关系图如下:

这里写图片描述

其中istream用来处理输入流,ostream处理输出流,iostream处理输入输出流,ifstream处理文件数据输入,ofstream处理文件数据输出,fstream处理文件数据输入输出。sstream中各类主要处理读写内存中string对象。
常见的流处理对象及运算符:

  1. cin 一个istream对象,从标准输入读取数据
  2. cout 一个ostream对象,向标准输出写入数据
  3. cerr 一个ostream对象,用于输出程序错误信息,写入到标准错误
  4. >>运算符,从一个istrem对象读取输入数据
  5. <<运算符,向一个ostream对象写入输出数据

参考C++标准I/O库用法

二、ifstream,ofstream,fstream

ifstream,ofstream,fstream这3个类都在<fstream>中,因此需要用到相关文件处理需要包含此头文件。fstream基本包含了前面两个的功能,下面介绍fstream的用法。创建fstream类对象的方式:

  • fstream obj;创建一个未绑定的文件流
  • fstream obj(“file name”);创建一个文件流,并打开文件名对应的文件
  • fstream obj(“file name”,mode );与2类似,以mode模式打开

第一种方式关联文件需要利用函数open(“file name”,mode ),需要注意的是不管用哪种方式创建文件对象,若是路径下文件不存在想要自动创建相应的文件,则必须加上模式ios::out。打开模式有以下一些方式:

  • ios::in 以读取方式打开文件
  • ios::out 以写入方式打开文件
  • ios::ate 存取指针在文件末尾
  • ios::app 写入时采用追加方式
  • ios::trunc 写入时抹去旧数据
  • ios::binary 以二进制方式存取
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值