2024-2025-1 20241318 《计算机基础与程序设计》第十四周学习总结

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP
这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK14
这个作业的目标 <学习《C语言程序设计》第13-14章并完成云班课测试>
作业正文 https://i.cnblogs.com/posts/edit

教材学习内容总结

  1. 文件类型
  • 文本文件:以ASCII码形式存储,便于阅读和编辑。
  • 二进制文件:以二进制形式存储数据,更紧凑,常用于存储数值等。
  1. 文件指针

用  FILE *  类型定义,如  FILE *fp; ,通过它来操作文件,关联到具体文件。

  1. 打开文件
  • 函数: fopen() ,例如  fp = fopen("文件名", "打开方式"); ,打开方式有  "r" (读)、 "w" (写,若存在覆盖)、 "a" (追加)等多种。
  • 返回值:成功返回文件指针,失败返回  NULL 。
  1. 关闭文件

用  fclose(fp)  函数关闭,及时关闭可避免数据丢失等问题。

  1. 读写文件
  • 字符读写: fgetc()  从文件读一个字符, fputc()  向文件写一个字符。
  • 字符串读写: fgets()  读一行字符串, fputs()  写字符串到文件。
  • 格式化读写:类似  scanf  和  printf  的功能,用  fscanf()  和  fprintf()  按格式读写文件内容。
  • 块读写: fread()  按块读数据, fwrite()  按块写数据,常用于读写结构体等较大数据块。
  1. 文件定位
  • 函数: fseek()  可移动文件指针位置,如  fseek(fp, 偏移量, 起始位置) ; ftell()  能获取当前文件指针位置; rewind()  可使文件指针回到开头。
  1. 文件结束判断

通过  feof()  函数,返回非零值表示到文件末尾,常用于循环中判断是否读完文件内容。

教材学习中的问题及解决过程
问题一

问:如果用  fopen  打开一个不存在的文件,且打开方式是  "r" (读),会出现什么情况?
答:会打开失败, fopen  函数会返回  NULL ,因为  "r"  方式是用于读取已存在的文件,不存在的文件无法按此方式打开进行读操作。

问题二

问:使用  fwrite  函数向二进制文件写入数据后,不关闭文件直接再次读取该文件里刚写入的数据可以吗?
答:不建议这样做。虽然有时候可能看似能读取到部分数据,但未关闭文件就进行读取可能会导致数据未完全正确写入磁盘(存在缓存等情况没及时刷新),从而读取到的数据可能不准确或者不完整,所以最好先使用  fclose  关闭文件,确保数据正常存储后再去读取文件内容。

基于AI的学习

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90
posted @ 2024-12-27 18:20  橙子1234  阅读(16)  评论(0)    收藏  举报