:文件操作)
一、为什么使用文件如果没有文件我们写的程序的数据是存储在电脑的内存中如果程序退出内存就会回收数据就丢失了等再次运行程序是看不到上次程序的数据的如果要将数据进行持久化的保存我们可以使用文件。二、什么是文件磁盘硬盘上的文件是文件。但是在程序设计中我们一般谈的文件中有两种程序文件、数据文件从文件功能的角度来分类的。2.1程序文件程序文件包括源程序文件后缀为.C目标文件windows环境后缀名为.obj可执行程序windows环境后缀名为.exe。2.2数据文件文件的内容不一定是程序而是程序运行时读写的数据比如程序运行需要从中读取数据的文件或者输入内容的文件。当我们把信息输出到磁盘上当再次从磁盘上把数据读取到内存中使用这里处理的就是磁盘上文件。2.3文件名一个文件要有一个唯一的文件标识以便用户识别和使用。文件名包含3部分文件路径文件名主干文件后缀例如C\code\test.txt为了方便起见文件标识常被称为文件名。三、二进制文件和文本文件测试代码四、文件的打开和关闭4.1 流和标准流4.1.1 流我们程序的数据需要输出到各种外部设备也需要从外部设备获取数据不同的外部设备的输⼊输出操作各不相同为了方便程序员对各种设备进行方便的操作我们抽象出了流的概念我们可以把流想象成流淌着字符的河。C程序针对文件、画面、键盘等的数据输入输出操作都是通过流操作的。一般情况下我们要想向流里写数据或者从流中读取数据都是要打开流然后操作。4.1.2 标准流4.2 文件指针不同的C编译器的FILE类型包含的内容不完全相同但是大同小异。4.3文件的打开和关闭示例代码五、文件的顺序读写5.1 顺序读写函数介绍上面说的适用于所有输⼊流⼀般指适⽤于标准输入流和其他输⼊流如文件输入流所有输出流⼀般指适用于标准输出流和其他输出流如文件输出流5.2 对比一组函数六、文件的随机读写6.1 fseek代码示例6.2 ftell其中fseek相当于把文件指针移到了文件末尾然后通过ftell函数来返回当前位置相对于文件开头的字节偏移量然后赋值给size变量最后在终端打印出来。6.3 rewind代码示例七、文件读取结束的判定7.1被错误使用的feof文本文件的例子二进制文件的例子八、文件缓冲区