Appearance
stdio.h
标准 IO 库及其头文件 stdio.h 为底层 IO 系统调用提供了一个通用的接口。这个库现在成了 ANSI 标准 C 的一部分。标准 IO 提供了很多复杂的函数用于格式化输出和扫描输入。它还负责满足设备的缓冲区需求。
🎏 流
标准 IO 库的操作都是围绕流 ( stream ) 来进行的。标准 IO 库把一个打开的文件模型转化为一个流。
流的描述
在标准 IO 中,流使用 FILE*来描述,用来保存一个已经打开了的文件的信息。它本质上是对应保存一个打开文本信息的内存区域首地址。FILE*结构体的指针也称作流指针,文件指针。
结构体定义:glibc/libio/bits/tpes/struct_FILE.h
在 Unix 所有程序中有三个默认打开的文件,分别是stdin, stdout, stderr,它们的编号分别为 0,1,2,可以在 /dev 目录下找到这三个文件:

这个编号可以通过 fp->_fileno 获取 _fileno。
源文件中的定义:glibc/libio/stdio.c
标准 IO 中的函数
File input/output - cppreference.com
常用的有: