C复习Day14(文件流 )

张开发
2026/4/15 21:24:20 15 分钟阅读

分享文章

C复习Day14(文件流 )
#技术笔记1.fopen()fopen用于打开管子, 管子一端连着程序,另一端连着文件;程序可以通过管子读文件内容,也可以发送数据到文件中。fopen的返回值是一个FILE *FILE *是一个结构体指针。fopen打开文件可能成功也可能失败成功返回非NULL 失败会返回NULL所以打开文件流的时候一定要判断所返回的指针是否为NULL类似内存分配一样。2.路径分为绝对路径和相对路径绝对路径在windows和linux中不一样。绝对路径在windows中是从盘符开始的例如C,D等之类的Linux中是在\--- 这个根目录下开始的在windows中使用路径建议把文件的扩展名打开。相对路径的关键点在于相对路径的起点是谁例如VS相对路径的起点是当前项目的根目录可以通过从文件资源管理器中打开这个文件夹就知道了。3.文件打开模式fopen的第二个参数就是可以选择的打开模式有rwa和rwa这些模式用readwriteappend这些英文单词可以更快的记住当r w a后面有就变成可读可写的模式了。其中w和a在文件不存在时会创建文件而w在文件存在时会清空文件这里有个小细节因为w会创建文件所以可以在打开文件后不判断吗不行因为可能出现你没有权限操作文件的情况。文件流要么用来读要么用来写。 不要一会读一会写。 很容易出问题。rb模式中这个b代表二进制模式就是不需要对所读取的内容做任何转换对图片视频的读取这个b模式很关键(图片和视频等, 二进制都可以复制,只要是文件)4. fgetc() 和 fputc()fgetc 从指定文件流中读下一个字符并返回该字符的ASCII码 失败或到达文件末尾返回EOF(这个通常时-1)。fputc 将一个字符写入指定的文件流中 失败返回EOF。一个从文件拿字符一个从文件放字符。

更多文章