标准I/O库
标准I/O库:会对I/O操作进行缓冲,分全缓冲、行缓冲和不缓冲三种。
不带缓存的I/O:不会对I/O操作进行缓冲,调用一次,执行一次系统调用。
在很多方面,使用标准I/O库和使用不带缓存的I/O类似。你需要先打开一个文件以建立一个访问路径。这个操作的返回值将作为其他标准I/O库函数的参数。在标准I/O库中,与底层文件描述符对应的对等物叫流(stream),它被实现为指向结构FILE的指针。
注意,不要把这里的文件流与C++语言中的输入输出流(iostream)以及AT&T UNIX System V Release 3中引入的进程间通信STREAMS模型相混淆。
在启动程序时,有三个文件流是自动打开的。它们是stdin、stdout和stderr。它们都是在stdio.h头文件里定义的,分别代表着标准输入、标准输出和标准错误输出,与底层文件描述符0、1和2相对应。
标准I/O库中主要的库函数:
fopen、fclose fread、fwrite fflush fseek fgetc、getc、getchar fputc、putc、putchar fgets、gets printf、fprintf sprintf scanf、fscanfsscanf