标准IO和文件IO的区别
系统调用(文件IO的函数接口)
用户空间进程访问内核的接口
把用户从底层的硬件编程中解放出来
极大的提高了系统的安全性
使用户程序具有可移植性
是操作系统的一部分
库函数(标准IO的函数接口)
库函数为了实现某个功能而封装起来的API集合
提供统一的编程接口,更加便于应用程序的移值
是语言或者应用程序的一部分
不用缓存的IO——文件IO
缓冲IO——标准IO
全缓冲:
刷新缓冲的条件
1、缓冲区满了
2、文件被关闭了--fclose--关的是FILE *
3、程序正常结束
4、强制刷新---fflush
man fflush
行缓冲
刷新缓冲的条件
1、缓冲区满了
2、文件被关闭了--fclose--关的是FILE *
3、程序正常结束
4、强制刷新
5、缓冲区遇到‘\n’就会刷新一次
不缓冲
只要在缓冲区里写数据,就会刷新
非缓冲文件系统 (低级磁盘IO)---文件IO