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 输入输出流所需的所有信息
(typedef)
完整的非数组对象类型,能够唯一指定文件中的位置,包括其多字节解析状态
(typedef)

预定义标准流

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

函数

定义于头文件 <cstdio>
文件访问
打开文件
(函数)
用不同名称打开现有流
(函数)
关闭文件
(函数)
将输出流与实际文件同步
(函数)
在宽字符 I/O 和窄字符 I/O 间切换文件流
(函数)
设置文件流的缓冲区
(函数)
设置文件流的缓冲区及其大小
(函数)
直接输入/输出
从文件读取
(函数)
写入文件
(函数)
无格式输入/输出
字节/多字节字符
从文件流获取字符
(函数)
从文件流获取字符串
(函数)
向文件流写入字符
(函数)
向文件流写入字符串
(函数)
stdin 读取字符
(函数)
(C++11 中弃用) (C++14 中移除)
stdin 读取字符串
(函数)
stdout 写入字符
(函数)
stdout 写入字符串
(函数)
将字符放回文件流
(函数)
宽字符
从文件流获取宽字符
(函数)
从文件流获取宽字符串
(函数)
向文件流写入宽字符
(函数)
向文件流写入宽字符串
(函数)

宏常量

定义于头文件 <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 文档 关于 文件输入/输出