本章所有示例代码>>gtihub
调用fopen函数打开文件后可以与文件交换数据,因此说调用fopen函数后创建了“流”(Stream)。此处的“流”是指“数据流动”,但通常可以比喻为“以数据收发为目的的一种桥梁”。
16.1 分离I/O流
1. 2次I/O流分离
- 第10章中,通过调用fork函数复制出1个套接字文件描述符,以区分输入输出中使用的文件描述符。虽然文件描述符本身不会根据输入输出进行区分,但我们分开了2个文件描述符的用途。
- 第15章中,通过2次fdopen函数调用,创建读模式FILE指针和写模式FILE指针。
2. 分离流的好处
- fork函数实现的“流”分离:
A、通过分开输入过程(代码)和输出过程降低实现难度;
B、与输入无关的输出操作可以提高速度;
- fdopen函数实现的“流”分离:
A、为了将FILE指针按读模式和写模式加以区分;
B、可以通过区分读写模式降低实现难度;
C、通过区分I/O缓冲提高缓冲性能;
3