系统相关
首页 > 系统相关> > 《Unix/Linux系统编程》第9章学习笔记 20191329马静怡

《Unix/Linux系统编程》第9章学习笔记 20191329马静怡

作者:互联网

第9章 I/O库函数

  系统调用是文件操作的基础,但它们至支持数据块的读/写。I/O库函数是一系列文件操作函数,既方便用户使用,又提高了整体效率。

I/O库函数与系统调用

I/O库函数算法

I/O库模式

模式参数 含义 模式参数 含义
r r+ 读/写,不会截断文件
w w+ 读/写,会先截断文件;如果文件不存在,会创建
a a+ 通过追加进行读/写;如果文件不存在,会创建
函数 功能
fseek()、ftell()、rewind() 更改文件流中的读/写字节位置
feof()、ferr()、fileno() 测试文件流状态
fdopen() 用文件描述符打开文件流
freopen() 以新名称重新打开现有的流
setbuf() 设置缓冲方案
popen() 创建管道,复刻子进程来调用sh

文件流缓冲

文件操作是什么?

程序运行产生的数据是存储在内存中的,当程序关闭的时候,数据随之丢失,想要保存数据,需要进行文件操作将数据保存在磁盘中。

二进制文件和文本文件如何转换?

标准I/O库中主要使用 fread/fwrite来读写二进制文件,而对于文本文件可以使用 fread/fwrite fgetc/fputc fprintf等,文本文件与二进制文件使用不同的编码方式,把一个数据以什么样的编码(字符还是值本身)存入文件是由用户主动选择的,也就是写入的接口选择,如果以二进制接口方式写入文件那么就是一个二进制文件,如果以字符方式写入文件就是一个文本文件了。既然有写入时候的编码也就会有读出的编码,只有两个编码对应才能读出正确的结果。

标签:文件,fread,fwrite,20191329,写入,Unix,马静怡,缓冲,库函数
来源: https://www.cnblogs.com/mjy0911/p/15309865.html