一切IO都是文件
1.I/O 输入/输出
C语言中的printf就是调用了操作系统的接口进行显示
系统调用就是调用操作系统的接口
标准IO就是指系统调用,调用已经实现的库函数的接口
2.标准I/O流 stream(在计算机上可以看成数据)
FILE
用一个结构体类型来存放打开文件的相关信息
FILE又称为流(文本流/二进制流)
磁盘处理比较慢,列入每次传入一个文件,太麻烦了,可以先保存在这
等攒够了100个文件,一起传,这个就是缓冲
全缓冲:当缓冲区无数据或者无空间时从执行IO操作
行缓存:当在输入和输出中遇到换行符时IO操作,当流和终端关联时,典型的行缓冲
无缓冲:
IO设备例如:鼠标,键盘等等
linux中三个标准的流,最后一行是定义好的结构体
3.文件的打开/关闭 (就是占用和释放资源)
打开一个标准流:
FILE *fopen(const char *path,const char *mode); //打开文件
成功时返回流指针;出错时返回NULL(FILE其实就是个结构体)
mode 参数就是代表跟c语言的r,w,r+,w+,a差不多,例如只读,只写,读写等等
从文本文件中读取字符