输入/输出库
来自cppreference.com
                    
                                        
                    < cpp
                    
                                                            
                    C++ 包含两个输入/输出库:现代的、基于流的 I/O 库和 C 风格 I/O 函数的标准集合。
基于流的 I/O
基于流的输入/输出库围绕抽象的输入/输出设备组织。这些抽象设备允许相同代码处理对文件、内存流或随即进行任意操作(例如压缩)的自定义适配器设备的输入/输出。
大多数已经被类模板化,故它们能被适配到任何标准字符类型。为最常用的基本字符类型( char 和 wchar_t )提供分离的 typedef 。以下列层次将类组织:
继承图
 抽象 | |
|   定义于头文件  
<ios>  | |
|   管理格式化标志和输入/输出异常  (类)  | |
|   管理任意流缓冲  (类模板)  | |
|   定义于头文件  
<streambuf>  | |
|   抽象原生设备  (类模板)  | |
|   定义于头文件  
<ostream>  | |
|   包装给定的抽象设备(std::basic_streambuf) 并提供高层输出接口 (类模板)  | |
|   定义于头文件  
<istream>  | |
|   包装给定的抽象设备(std::basic_streambuf) 并提供高层输入接口 (类模板)  | |
|   包装给定的抽象设备(std::basic_streambuf) 并提供高层输入/输出接口 (类模板)  | |
 文件 I/O 实现 | |
|   定义于头文件  
<fstream>  | |
|   抽象原生文件设备  (类模板)  | |
|   实现高层文件流输入操作  (类模板)  | |
|   实现高层文件流输出操作  (类模板)  | |
|   实现高层文件流输入/输出操作  (类模板)  | |
 字符串 I/O 实现 | |
|   定义于头文件  
<sstream>  | |
|   实现原生字符串设备  (类模板)  | |
|   实现高层字符串流输入操作  (类模板)  | |
|   实现高层字符串流输出操作  (类模板)  | |
|   实现高层字符串流输入/输出操作  (类模板)  | |
 数组 I/O 实现 | |
|   定义于头文件  
<strstream>  | |
|    (C++98 中弃用)  | 
  实现原生字符数组设备  (类)  | 
|    (C++98 中弃用)  | 
  实现字符数组输入操作  (类)  | 
|    (C++98 中弃用)  | 
  实现字符数组输出操作  (类)  | 
|    (C++98 中弃用)  | 
  实现字符数组输入/输出操作  (类)  | 
 同步的输出 | |
|   定义于头文件  
<syncstream>  | |
|    (C++20)  | 
  同步输出设备的包装  (类模板)  | 
|    (C++20)  | 
  同步输出流的包装  (类模板)  | 
typedef
提供对常用字符类型的 typedef :
typedef basic_ios<char> ios; typedef basic_ios<wchar_t> wios; typedef basic_streambuf<char> streambuf; typedef basic_streambuf<wchar_t> wstreambuf; typedef basic_filebuf<char> filebuf; typedef basic_filebuf<wchar_t> wfilebuf; typedef basic_stringbuf<char> stringbuf; typedef basic_stringbuf<wchar_t> wstringbuf; typedef basic_syncbuf<char> syncbuf; typedef basic_syncbuf<wchar_t> wsyncbuf; typedef basic_istream<char> istream; typedef basic_istream<wchar_t> wistream; typedef basic_ostream<char> ostream; typedef basic_ostream<wchar_t> wostream; typedef basic_iostream<char> iostream; typedef basic_iostream<wchar_t> wiostream; typedef basic_ifstream<char> ifstream; typedef basic_ifstream<wchar_t> wifstream; typedef basic_ofstream<char> ofstream; typedef basic_ofstream<wchar_t> wofstream; typedef basic_fstream<char> fstream; typedef basic_fstream<wchar_t> wfstream; typedef basic_istringstream<char> istringstream; typedef basic_istringstream<wchar_t> wistringstream; typedef basic_ostringstream<char> ostringstream; typedef basic_ostringstream<wchar_t> wostringstream; typedef basic_stringstream<char> stringstream; typedef basic_stringstream<wchar_t> wstringstream; typedef basic_osyncstream<char> osyncstream; typedef basic_osyncstream<wchar_t> wosyncstream;
预定义标准流对象
|   定义于头文件  
<iostream>  | |
|   从标准 C 输入流 stdin 中读取 (全局对象)  | |
|   写入到标准 C 输出流 stdout (全局对象)  | |
|   写入到标准 C 错误流 stderr, 无缓冲 (全局对象)  | |
|   写入到标准 C 错误流 stderr (全局对象)  | |
I/O 操纵符
基于流的 I/O 库用 I/O 操纵符(例如 std::boolalpha 、 std::hex 等)控制流的行为。
类型
定义下列辅助类型:
|   定义于头文件  
<ios>  | |
|   表示相对的文件/流位置(距 fpos 的偏移),足以表示任何文件大小  (typedef)  | |
|   表示一次 I/O 操作中转移的字符数或 I/O 缓冲区的大小  (typedef)  | |
|   表示流或文件中的绝对位置  (类模板)  | |
提供下列 std::fpos 的特化:
|   定义于头文件  
<ios>  | |
| 类型 | 定义 | 
  streampos
 | 
std::fpos<std::char_traits<char>::state_type> | 
  wstreampos
 | 
std::fpos<std::char_traits<wchar_t>::state_type> | 
错误类别接口
|   定义于头文件  
<ios>  | |
|    (C++11)  | 
  IO 流的错误码  (枚举)  | 
|    (C++11)  | 
   鉴别 iostream 错误类别  (函数)  | 
C 风格 I/O
C++ 亦包含 C 所定义的输入/输出函数,如 std::fopen 、 std::getc 等。