基础十四

1.链表多面回顾与提高

2.文本文件与二进制文件

大家都知道计算机的存储,物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的

这两者只是在编码层次上有差异。

简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,二进制文件是基于值编码的文件


文本文件:

以ASCII码格式存放,一个字节存放一个字符。

文本文件的每一个字节存放一个ASCI码,代表一个字符。

这便于对字符的逐个处理,但占用存储空间较多,而且要花费时间转换。

二进制文件:

以值(补码)编码格式存放。

二进制文件是把数据以二进制数的格式存放在文件中的,其占用存储空间较少。

数据按其内存中的存储形式原样存放。


3.文件的缓冲

为什么要有缓冲区( buffer )原因为多种,有两个重点:

  • 从内存中读取数据比从文件中读取数据要快得多。
  • 对文件的读写需要用到open、read、write等系统底层函数,而用户进程每调用一次系统函数都要从用户态切换到内核态,等执行完毕后再返回用户态,这种切换要花费一定时间成本(对于高并发程序而言,这种状态的切换会影响到程序性能)。

4.FILE与fopen

5.fclose

6.一次读写一个文件fgetcfputc

7.feof的问题和加解密

8.什么是换行和fgetsfputs

猜你喜欢

转载自blog.csdn.net/qq_41375318/article/details/113942460
今日推荐