c文件缓冲的原理?

来源:百度知道 编辑:UC知道 时间:2024/05/10 06:30:02
可以用r+或w+的方式打开一个文件,这时读缓冲和写缓冲是一个缓冲区还是两个?如何找到这两个缓冲区的地址?系统按什么原则缓冲数据?

如果打开读,就只有输入缓冲区,打开写,则为输出缓冲区,如果读写则有两个缓冲区了。你不能获得这个缓冲区地址,如果要强行刷新缓冲区,需要利用函数,如fflush,缓冲区就是预先开辟的内存,你也可以自己实现,文件等到缓冲区满了再一次写入文件,或一次读入一个缓冲区数据,所有这些都是为了加快文件读写,因为文件读写是程序中最费时的操作之一!

一个缓冲区