C++ 参考手册
- C++11
 - C++14
 - C++17
 - C++20
 - C++ 编译器支持情况表
 - 独立与宿主实现
 - C++ 语言
 - C++ 关键词
 - 预处理器
 - C++ 标准库头文件
 - 标准库头文件 <ctime>
 - 标准库头文件 <cstring>
 - 标准库头文件 <set>
 - 标准库头文件 <cctype>
 - 标准库头文件 <cwctype>
 - 标准库头文件 <utility>
 - 标准库头文件 <queue>
 - 标准库头文件 <complex>
 - 标准库头文件 <iterator>
 - 标准库头文件 <algorithm>
 - 标准库头文件 <valarray>
 - 标准库头文件 <numeric>
 - 标准库头文件 <cmath>
 - 标准库头文件 <iosfwd>
 - 标准库头文件 <ios>
 - 标准库头文件 <iomanip>
 - 标准库头文件 <streambuf>
 - 标准库头文件 <istream>
 - 标准库头文件 <ostream>
 - 标准库头文件 <iostream>
 - 标准库头文件 <sstream>
 - 标准库头文件 <clocale>
 - 标准库头文件 <vector>
 - 标准库头文件 <deque>
 - 标准库头文件 <list>
 - 标准库头文件 <map>
 - 标准库头文件 <cwchar>
 - 标准库头文件 <locale>
 - 标准库头文件 <codecvt>
 - 标准库头文件 <bitset>
 - 标准库头文件 <functional>
 - 标准库头文件 <stdexcept>
 - 标准库头文件 <csignal>
 - 标准库头文件 <csetjmp>
 - 标准库头文件 <stack>
 - 标准库头文件 <cassert>
 - 标准库头文件 <cerrno>
 - 标准库头文件 <memory>
 - 标准库头文件 <typeindex>
 - 标准库头文件 <type_traits>
 - 标准库头文件 <chrono>
 - 标准库头文件 <initializer_list>
 - 标准库头文件 <tuple>
 - 标准库头文件 <scoped_allocator>
 - 标准库头文件 <cstdint>
 - 标准库头文件 <cinttypes>
 - 标准库头文件 <system_error>
 - 标准库头文件 <cuchar>
 - 标准库头文件 <array>
 - 标准库头文件 <forward_list>
 - 标准库头文件 <unordered_set>
 - 标准库头文件 <unordered_map>
 - 标准库头文件 <random>
 - 标准库头文件 <ratio>
 - 标准库头文件 <cfenv>
 - 标准库头文件 <regex>
 - 标准库头文件 <atomic>
 - 标准库头文件 <thread>
 - 标准库头文件 <mutex>
 - 标准库头文件 <future>
 - 标准库头文件 <condition_variable>
 - 标准库头文件 <any>
 - 标准库头文件 <optional>
 - 标准库头文件 <variant>
 - 标准库头文件 <memory_resource>
 - 标准库头文件 <string_view>
 - 标准库头文件 <charconv>
 - 标准库头文件 <execution>
 - 标准库头文件 <filesystem>
 - 标准库头文件 <concepts>
 - 标准库头文件 <coroutine>
 - 标准库头文件 <compare>
 - 标准库头文件 <version>
 - 标准库头文件 <source_location>
 - 标准库头文件 <format>
 - 标准库头文件 <span>
 - 标准库头文件 <ranges>
 - 标准库头文件 <bit>
 - 标准库头文件 <numbers>
 - 标准库头文件 <syncstream>
 - 标准库头文件 <stop_token>
 - 标准库头文件 <semaphore>
 - 标准库头文件 <latch>
 - 标准库头文件 <barrier>
 - 标准库头文件 <string>
 - 标准库头文件 <cstddef>
 - 标准库头文件 <limits>
 - 标准库头文件 <cfloat>
 - 标准库头文件 <climits>
 - 标准库头文件 <cstdlib>
 - 标准库头文件 <new>
 - 标准库头文件 <typeinfo>
 - 标准库头文件 <exception>
 - 标准库头文件 <cstdarg>
 - 标准库头文件 <ciso646>
 - 标准库头文件 <cstdalign>
 - 标准库头文件 <cstdbool>
 - 标准库头文件 <fstream>
 - 标准库头文件 <cstdio>
 - 标准库头文件 <strstream>
 - 标准库头文件 <shared_mutex>
 - 标准库头文件 <ccomplex>
 - 标准库头文件 <ctgmath>
 - 注释
 - 具名要求
 - 功能特性测试 (C++20)
 - 工具库
 - 类型支持(基本类型、RTTI、类型特性)
 - 概念库 (C++20)
 - 错误处理
 - 动态内存管理
 - 日期和时间工具
 - 字符串库
 - 容器库
 - 迭代器库
 - 范围库 (C++20)
 - 算法库
 - 数值库
 - 输入/输出库
 - 文件系统库
 - 本地化库
 - 正则表达式库
 - 原子操作库
 - 线程支持库
 - 实验性 C++ 特性
 - 有用的资源
 - 索引
 - std 符号索引
 - 协程支持 (C++20)
 - C++ 关键词
 
位置:首页 > C++ 参考手册 >C++ 标准库头文件 > 标准库头文件 <cstdio>
标准库头文件 <cstdio>
此头文件原作为 <stdio.h> 存在于 C 标准库。
此头文件是 C 风格输入/输出库的一部分。
类型
| FILE | 类型,足以保有控制 C I/O 流所需的全部信息 | 
| fpos_t | 类型,足以唯一指定文件中的位置 | 
|   sizeof 运算符返回的无符号整数类型  (typedef)  | 
宏
|   实现定义的空指针常量  (宏常量)  | |
|    stdinstdoutstderr  | 
  与输入流关联的 FILE* 类型的表达式 与输出流关联的 FILE* 类型的表达式 与错误输出流关联的 FILE* 类型的表达式 (宏常量)  | 
|    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 数组的大小  (宏常量)  | 
函数
 文件访问 | |
|   打开文件  (函数)  | |
|   以不同名称打开既存流  (函数)  | |
|   关闭文件  (函数)  | |
|   将输出流与实际文件同步  (函数)  | |
|   为文件流设置缓冲区  (函数)  | |
|   为文件流设置缓冲区与其大小  (函数)  | |
 直接输入/输出 | |
|   从文件读取  (函数)  | |
|   写入文件  (函数)  | |
 无格式输入/输出 | |
 窄字符 | |
|   从文件流获取字符  (函数)  | |
|   从文件流获取字符串  (函数)  | |
|   写字符到文件流  (函数)  | |
|   写字符串到文件流  (函数)  | |
|   从 stdin 读取字符  (函数)  | |
|    (C++11 中弃用)(C++14 中移除)  | 
  从 stdin 读取字符串  (函数)  | 
|   写字符到 stdout  (函数)  | |
|   写字符串到 stdout   (函数)  | |
|   把字符放回文件流  (函数)  | |
 有格式输入/输出 | |
 窄/多字节字符 | |
|   从 stdin、文件流或缓冲区读取有格式输入  (函数)  | |
|    (C++11)(C++11)(C++11)  | 
  使用可变实参列表 从 stdin、文件流或缓冲区读取有格式输入 (函数)  | 
|    (C++11)  | 
   打印有格式输出到 stdout、文件流或缓冲区   (函数)  | 
|   使用可变实参列表 打印有格式输出到 stdout、文件流或缓冲区 (函数)  | |
 文件寻位 | |
|   返回当前文件位置指示器  (函数)  | |
|   获取文件位置指示器  (函数)  | |
|   移动文件位置指示器到文件中的指定位置  (函数)  | |
|   移动文件位置指示器到文件中的指定位置  (函数)  | |
|   移动文件位置指示器到文件起始  (函数)  | |
 错误处理 | |
|   清除错误  (函数)  | |
|   检查文件尾  (函数)  | |
|   检查文件错误  (函数)  | |
|   显示对应当前错误的字符串于 stderr  (函数)  | |
 文件上的操作 | |
|    删除文件   (函数)  | |
|    重命名文件  (函数)  | |
|    创建并打开一个临时、自动移除的文件  (函数)  | |
|   返回一个唯一独有的文件名  (函数)  | |
注意
- NULL 亦定义于下列头文件:
 - std::size_t 亦定义于下列头文件:
 
概要
namespace std { using size_t = /* 见定义 */; using FILE = /* 见定义 */ ; using fpos_t = /* 见定义 */ ; } #define NULL /* 见定义 */ #define _IOFBF /* 见定义 */ #define _IOLBF /* 见定义 */ #define _IONBF /* 见定义 */ #define BUFSIZ /* 见定义 */ #define EOF /* 见定义 */ #define FOPEN_MAX /* 见定义 */ #define FILENAME_MAX /* 见定义 */ #define L_tmpnam /* 见定义 */ #define SEEK_CUR /* 见定义 */ #define SEEK_END /* 见定义 */ #define SEEK_SET /* 见定义 */ #define TMP_MAX /* 见定义 */ #define stderr /* 见定义 */ #define stdin /* 见定义 */ #define stdout /* 见定义 */ namespace std { int remove(const char* filename); int rename(const char* old, const char* new); FILE* tmpfile(); char* tmpnam(char* s); int fclose(FILE* stream); int fflush(FILE* stream); FILE* fopen(const char* filename, const char* mode); FILE* freopen(const char* filename, const char* mode, FILE* stream); void setbuf(FILE* stream, char* buf); int setvbuf(FILE* stream, char* buf, int mode, size_t size); int fprintf(FILE* stream, const char* format, ...); int fscanf(FILE* stream, const char* format, ...); int printf(const char* format, ...); int scanf(const char* format, ...); int snprintf(char* s, size_t n, const char* format, ...); int sprintf(char* s, const char* format, ...); int sscanf(const char* s, const char* format, ...); int vfprintf(FILE* stream, const char* format, va_list arg); int vfscanf(FILE* stream, const char* format, va_list arg); int vprintf(const char* format, va_list arg); int vscanf(const char* format, va_list arg); int vsnprintf(char* s, size_t n, const char* format, va_list arg); int vsprintf(char* s, const char* format, va_list arg); int vsscanf(const char* s, const char* format, va_list arg); int fgetc(FILE* stream); char* fgets(char* s, int n, FILE* stream); int fputc(int c, FILE* stream); int fputs(const char* s, FILE* stream); int getc(FILE* stream); int getchar(); int putc(int c, FILE* stream); int putchar(int c); int puts(const char* s); int ungetc(int c, FILE* stream); size_t fread(void* ptr, size_t size, size_t nmemb, FILE* stream); size_t fwrite(const void* ptr, size_t size, size_t nmemb, FILE* stream); int fgetpos(FILE* stream, fpos_t* pos); int fseek(FILE* stream, long int offset, int whence); int fsetpos(FILE* stream, const fpos_t* pos); long int ftell(FILE* stream); void rewind(FILE* stream); void clearerr(FILE* stream); int feof(FILE* stream); int ferror(FILE* stream); void perror(const char* s); }