- 系统IO:由操作系统直接提供的接口函数
- 标准IO:由标准C库(第三方库)提供的接口函数(通过封装操作系统提供的系统IO,再给用户使用)
系统IO
系统IO:Linux系统提供给应用程序对文件进行操作的接口。
系统IO中用文件描述符来表示一个文件。
系统IO没有缓冲区,每次直接读写文件,这样每次都要系统调用,系统调用会增加系统的开销。
标准IO
标准IO:标准I/O是ANSI C建立的一个标准I/O模型,是一个标准函数包和stdio.h头文件中的定义,具有一定的可移植性。
标准IO中用FILE(流)来表示一个文件。
标准IO有缓冲区,缓冲区可以让IO操作效率提高,它可以把积攒的数据一次性写入到文件或设备里。
刷新缓冲区的条件:缓冲区已满、用函数强制刷新、程序结束、关闭文件。
参考:
https://blog.csdn.net/laifengyuan1/article/details/86620421
https://blog.csdn.net/big_bit/article/details/51804391
(先记录这么点)