命名空间
变体
操作

C 样式文件输入/输出

来自 cppreference.com
< cpp‎ | io
 
 
 
 

C++ 标准库的 C I/O 子集实现了 C 样式流输入/输出操作。 <cstdio> 头文件提供通用文件操作支持,并提供具有窄字符和多字节字符输入/输出功能的函数,以及 <cwchar> 头文件提供具有宽字符输入/输出功能的函数。

C 流由类型为 std::FILE 的对象表示,这些对象只能通过类型为 std::FILE* 的指针访问和操作。每个 C 流都与一个外部物理设备(文件、标准输入流、打印机、串行端口等)相关联。

内容

[编辑] 类型

在头文件 <cstdio> 中定义
对象类型,能够保存控制 C I/O 流所需的所有信息
(typedef) [编辑]
完整的非数组对象类型,能够唯一地指定文件中的位置,包括其多字节解析状态
(typedef) [编辑]

[编辑] 预定义标准流

在头文件 <cstdio> 中定义
类型为 FILE* 的表达式,与输入流相关联
类型为 FILE* 的表达式,与输出流相关联
类型为 FILE* 的表达式,与错误输出流相关联
(宏常量) [编辑]

[编辑] 函数

在头文件 <cstdio> 中定义
文件访问
打开一个文件
(函数) [编辑]
使用不同的名称打开现有流
(函数) [编辑]
关闭一个文件
(函数) [编辑]
将输出流与实际文件同步
(函数) [编辑]
在宽字符 I/O 和窄字符 I/O 之间切换文件流
(函数) [编辑]
设置文件流的缓冲区
(函数) [编辑]
设置文件流的缓冲区及其大小
(函数) [编辑]
直接输入/输出
从文件读取
(函数) [编辑]
写入文件
(函数) [编辑]
非格式化输入/输出
字节/多字节字符
从文件流获取字符
(函数) [编辑]
从文件流获取字符串
(函数) [编辑]
向文件流写入字符
(函数) [编辑]
向文件流写入字符串
(函数) [编辑]
stdin 读取字符
(函数) [编辑]
(C++11 中已弃用)(C++14 中已移除)
stdin 读取字符串
(函数) [编辑]
stdout 写入字符
(函数) [编辑]
将字符字符串写入 stdout
(函数) [编辑]
将一个字符放回文件流
(函数) [编辑]
宽字符
从文件流获取宽字符
(函数) [编辑]
从文件流获取宽字符串
(函数) [编辑]
将宽字符写入文件流
(函数) [编辑]
将宽字符串写入文件流
(函数) [编辑]
stdin 读取宽字符
(函数) [编辑]
将宽字符写入 stdout
(函数) [编辑]
将宽字符放回文件流
(函数) [编辑]
格式化输入/输出
字节/多字节字符
stdin、文件流或缓冲区读取格式化输入
(函数) [编辑]
(C++11)(C++11)(C++11)
stdin、文件流或缓冲区读取格式化输入
使用可变参数列表
(函数) [编辑]
将格式化输出打印到 stdout、文件流或缓冲区
(函数) [编辑]
将格式化输出打印到 stdout、文件流或缓冲区
使用可变参数列表
(函数) [编辑]
宽字符
stdin、文件流或缓冲区读取格式化宽字符输入
(函数) [编辑]
(C++11)(C++11)(C++11)
使用可变参数列表从 stdin、文件流
或缓冲区读取格式化宽字符输入
(函数) [编辑]
将格式化宽字符输出打印到 stdout、文件流或缓冲区
(函数) [编辑]
将格式化宽字符输出打印到 stdout、文件流
或缓冲区读取格式化宽字符输入
(函数) [编辑]
文件定位
返回当前文件位置指示器
(函数) [编辑]
获取文件位置指示器
(函数) [编辑]
将文件位置指示器移动到文件中的特定位置
(函数) [编辑]
将文件位置指示器移动到文件中的特定位置
(函数) [编辑]
将文件位置指示器移动到文件开头
(函数) [编辑]
错误处理
清除错误
(函数) [编辑]
检查文件结尾
(函数) [编辑]
检查文件错误
(函数) [编辑]
将当前错误对应的字符字符串显示到 stderr
(函数) [编辑]
文件操作
删除文件
(函数) [编辑]
重命名文件
(函数) [编辑]
创建并打开一个临时文件,该文件会在程序退出时自动删除
(函数) [编辑]
返回唯一的文件名
(函数) [编辑]

[编辑] 宏常量

在头文件 <cstdio> 中定义
EOF
类型为 int 且值为负的整数常量表达式
(宏常量)
FOPEN_MAX
可以同时打开的文件数量
(宏常量)
FILENAME_MAX
用于存放最长支持的文件名的 char 数组所需的大小
(宏常量)
BUFSIZ
std::setbuf 使用的缓冲区的大小
(宏常量)
_IOFBF_IOLBF_IONBF
传递给 std::setbuf 的参数,表示全缓冲 I/O
传递给 std::setbuf 的参数,表示行缓冲 I/O
传递给 std::setbuf 的参数,表示无缓冲 I/O
(宏常量)
SEEK_SETSEEK_CURSEEK_END
传递给 std::fseek 的参数,表示从文件开头开始查找
传递给 std::fseek 的参数,表示从当前文件位置开始查找
传递给 std::fseek 的参数,表示从文件结尾开始查找
(宏常量)
TMP_MAX
std::tmpnam 保证能生成的唯一文件名的最大数量
(宏常量)
L_tmpnam
用于存放 std::tmpnam 结果的 char 数组所需的大小
(宏常量)

[编辑] 另请参见

C 文档 针对 文件输入/输出