这一章讲述了I/O库。很多其他操作系统都实现了标准I/O库,这个库由ISO C标准说明。Single UNIX specification对ISO C标准进行了扩充,定义另外一些接口。
35年来,几乎没有对标准I/O库进行修改
freopen函数清除一个流的定向;fwide函数可用于设置流的定向。
#include <stdio.h>
#include <wchar.h>
int fwide(FILE *fp,int mode);
- mode参数值为负,fwide将试图使指定的流是字节定向的。
- mode参数值为正,fwide将试图使指定的流是宽定向的。
- mode参数为0,fwide将不试图设置流的定向,但返回标识该流定向的值。
3个流可以自动地被进程使用,分别是:标准输入、标准输出和标准错误。
3个标准I/O流通过预定文件指针stdin、stdout和stderr加以引用。这3个文件定义在头文件<stdio.h>中。
标准I/O提供了以下3种类型的操作。 (1)全缓冲 术语冲洗(flush)说明标准I/O缓冲区的写操作。 (2)行缓冲 (3)不带缓冲。