Namespaces
Variants

C-style file input/output

From cppreference.net
< cpp ‎ | io

C++标准库中的C I/O子集实现了C风格的流输入/输出操作。 <cstdio> 头文件提供通用文件操作支持,并具备窄字符和多字节字符输入/输出功能; <cwchar> 头文件则提供宽字符输入/输出功能。

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

目录

类型

定义于头文件 <cstdio>
对象类型,能够保存控制C输入输出流所需的所有信息
(类型定义)
完整的非数组对象类型,能够唯一指定文件中的位置(包括其多字节解析状态)
(类型定义)

预定义标准流

定义于头文件 <cstdio>
类型为 FILE * 的表达式,关联到输入流
类型为 FILE * 的表达式,关联到输出流
类型为 FILE * 的表达式,关联到错误输出流
(宏常量)

函数

定义于头文件 <cstdio>
文件访问
打开文件
(函数)
使用不同名称打开现有流
(函数)
关闭文件
(函数)
将输出流与实际文件同步
(函数)
切换文件流在宽字符I/O与窄字符I/O之间的模式
(函数)
设置文件流的缓冲区
(函数)
设置文件流的缓冲区及其大小
(函数)
直接输入/输出
从文件读取数据
(函数)
写入文件
(函数)
无格式输入/输出
字节/多字节字符
从文件流获取一个字符
(函数)
从文件流获取字符串
(函数)
将字符写入文件流
(函数)
将字符串写入文件流
(函数)
stdin 读取一个字符
(函数)
(C++11 中弃用) (C++14 中移除)
stdin 读取字符串
(函数)
将字符写入到 stdout
(函数)
将字符串写入 stdout
(函数)
将字符放回文件流
(函数)
宽字符
从文件流获取宽字符
(函数)
从文件流获取宽字符串
(函数)
向文件流写入宽字符
(函数)
将宽字符串写入文件流
(函数)
stdin 读取宽字符
(函数)
stdout 写入一个宽字符
(函数)
将宽字符放回文件流
(函数)
格式化输入/输出
字节/多字节字符
标准输入 、文件流或缓冲区读取格式化输入
(函数)
(C++11) (C++11) (C++11)
stdin 、文件流或缓冲区读取格式化输入
使用可变参数列表
(函数)
将格式化输出打印到 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_SET SEEK_CUR SEEK_END
std::fseek 参数,表示从文件起始位置寻址
std::fseek 参数,表示从当前文件位置寻址
std::fseek 参数,表示从文件末尾寻址
(宏常量)
TMP_MAX
保证 std::tmpnam 可生成的唯一文件名最大数量
(宏常量)
L_tmpnam
存储 std::tmpnam 结果所需的 char 数组大小
(宏常量)

另请参阅

C 文档 用于 文件输入/输出