◐ Shell
clean mode source ↗

C 风格的文件输入/输出 - cppreference.com

来自cppreference.com

C++ 标准库的 C 输入/输出子集实现了 C 风格流的输入/输出操作。<cstdio> 头文件提供了对通用文件操作的支持,并提供具有窄和多字节字符的输入/输出能力的函数,而 <cwchar> 头文件提供了具有宽字符输入/输出能力的函数。

C 流以 std::FILE 类型的对象所代表,只能通过 std::FILE* 类型的指针予以访问及操作。每个 C 流均与外部物理设备(文件、标准输入流、打印机、串口等)相关联。

类型

预定义标准流

函数

在标头 <cstdio> 定义

文件访问
打开文件
(函数) [编辑]
以不同名称打开既存流
(函数) [编辑]
关闭文件
(函数) [编辑]
将输出流与实际文件同步
(函数) [编辑]
在宽字符输入/输出和窄字符输入/输出间切换文件流
(函数) [编辑]
为文件流设置缓冲区
(函数) [编辑]
为文件流设置缓冲区与其大小
(函数) [编辑]
直接输入/输出
从文件读取
(函数) [编辑]
写入文件
(函数) [编辑]
无格式输入/输出
字节/多字节字符
从文件流获取字符
(函数) [编辑]
从文件流获取字符串
(函数) [编辑]
写字符到文件流
(函数) [编辑]
写字符串到文件流
(函数) [编辑]
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
(函数) [编辑]
文件上的操作
删除文件
(函数) [编辑]
重命名文件
(函数) [编辑]
创建并打开一个临时、自动移除的文件
(函数) [编辑]
返回一个唯一独有的文件名
(函数) [编辑]

宏常量

值为负的 int 类型整数常量表达式
(宏常量)
能同时打开的最大文件数
(宏常量)
保有最长受支持文件名所需的 char 数组大小
(宏常量)

_PRINTF_NAN_LEN_MAX

(C++26)

所有(可能取反的)非数(NaN)值可输出的最大字符数
(宏常量)
std::setbuf 所用的缓冲区大小
(宏常量)
表示 std::setvbuf 要设置的缓冲模式(全缓冲/行缓冲/无缓冲)
(宏常量)
表示 std::fseek 要用到的偏移原点(文件首/当前位置/文件尾)
(宏常量)
std::tmpnam 所能生成的独有文件名的最大数量
(宏常量)
保有 std::tmpnam 结果所需的 char 数组大小
(宏常量)

参阅