首页 > 编程语言 >2023-2024 20231313《计算机基础与程序设计》第十四周学习总结

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

时间:2023-12-28 20:12:10浏览次数:49  
标签:文件 函数 200 二进制 读写 20231313 2024 2023 指针

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

作业 速达
作业课程 班级链接
作业要求 计算机基础与程序设计第十四周学习总结
作业内容 《C语言程序设计》第13章并完成云班课测试
作业正文 我的作业


目录

教材总结

总结

文件操作是C语言中常用的一种数据输入与输出方式,它可以实现数据的持久化存储和读取。文件操作涉及到以下几个方面:

  • 文件的概念和类型:文件是存放在磁盘上的一组相关数据,它可以分为文本文件和二进制文件两种。文本文件是以字符编码的方式保存的,可以用文本编辑器打开和修改。二进制文件是将内存中的数据原封不动地保存在文件中,适用于非字符为主的数据,如图像、音频、视频等。
  • 文件的打开和关闭:要对文件进行操作,首先要用fopen函数打开文件,它的原型是FILE * fopen (const char * filename,const char * mode);,其中filename是文件名,mode是文件打开模式,如"r"表示只读,"w"表示只写,"a"表示追加,"b"表示二进制,"+"表示读写等。fopen函数返回一个文件指针,它是一个指向FILE结构体的指针,用来保存文件的相关信息。如果打开失败,fopen函数返回NULL。打开文件后,要用fclose函数关闭文件,它的原型是int fclose (FILE * stream );,其中stream是文件指针,fclose函数会将缓冲区中的数据写入磁盘,并释放文件信息区。如果关闭成功,fclose函数返回0,否则返回非零值。
  • 文件的读写:C语言提供了多种函数来对文件进行读写操作,如fgetc、fputc、fgets、fputs、fread、fwrite、fprintf、fscanf等。这些函数的原型和用法可以参考这篇文章。文件的读写可以分为顺序存取和随机存取两种方式。顺序存取是按照文件中的数据顺序依次读写,适用于文本文件。随机存取是根据文件指针的位置任意读写,适用于二进制文件。
  • 文件的定位:有时候我们需要在文件中移动文件指针的位置,以便进行随机存取。C语言提供了以下几个函数来实现文件的定位:
    • int fseek (FILE * stream, long int offset, int origin);:该函数可以将文件指针移动到指定的位置,其中stream是文件指针,offset是相对于origin的偏移量,origin是参考位置,可以是SEEK_SET(文件开头),SEEK_CUR(当前位置),SEEK_END(文件结尾)。
    • long int ftell (FILE * stream);:该函数可以返回文件指针相对于文件开头的位置,其中stream是文件指针。
    • void rewind (FILE * stream);:该函数可以将文件指针重置到文件开头,其中stream是文件指针。

学习过程中的问题

不论是学习C语言或者c++文件操作的过程中,可能会遇到以下一些问题:

  • 文件打开失败:有时候,由于文件不存在或者权限不足,使用fopen函数或者fstream打开文件时会返回NULL,导致后续的文件操作无法进行。解决方案:在使用文件之前,先检查文件是否存在,同时确保程序有足够的权限来读写文件。
  • 文件指针错误:有时候,由于文件指针的位置和偏移量设置不正确,导致文件的读写出现错误或者丢失数据。解决方案:使用fseek、ftell和rewind等函数来正确地定位和移动文件指针,注意文件指针的基准位置和偏移量的正负。
  • 文件格式混淆:有时候,由于文件的格式和文件操作的模式不匹配,导致文件的读写出现乱码或者损坏。解决方案:区分文本文件和二进制文件,使用相应的文件操作模式和函数,如“r”和“rb”、“w”和“wb”等。
  • 文件缓冲区问题:有时候,由于文件缓冲区没有及时刷新,导致文件的读写出现延迟或者不完整。解决方案:使用fflush函数来强制刷新文件缓冲区,或者使用fclose函数来关闭文件,同时刷新缓冲区。
  • 文件结束符问题:有时候,由于文件结束符的判断不正确,导致文件的读取出现死循环或者提前终止。解决方案:使用feof函数来判断文件是否读取到末尾,注意不要在读取之前使用feof函数,否则会导致漏读最后一个字符。

《C语言程序设计》第十三章

我想分别谈谈C语言和C++在文件操作这一方面的不同,

  • 文件的概念和分类:文件是磁盘上的数据集合,可以分为程序文件和数据文件。程序文件是存储源代码、目标代码或可执行代码的文件,如.c、.obj或.exe文件。数据文件是存储程序运行时读写的数据的文件,如.txt、.bin或.dat文件。
  • 文件的打开和关闭:文件在读写之前必须先打开,使用结束后必须关闭。打开文件需要指定文件名和文件模式,如只读、只写、追加、二进制等。打开文件会返回一个文件指针,用来标识和访问文件。关闭文件会释放文件指针和文件资源。
  • 文件的顺序读写:文件的读写可以按照字符、字符串、格式化或二进制的方式进行。常用的文件读写函数有fgetc、fputc、fgets、fputs、fscanf、fprintf、fread和fwrite等。文件读写时需要注意文件指针的位置和文件结束符的判断。
  • 文件的随机访问:文件的随机访问可以通过移动文件指针的位置来实现。常用的文件指针移动函数有fseek、ftell和rewind等。文件指针移动时需要指定基准位置和偏移量,如文件开头、文件结尾或当前位置等。

而在C++中分别采用了不同的代码,C++关于文件操作也是可以分为以下几个方面:

  • 文件的概念和分类:文件是磁盘上的数据集合,可以分为文本文件和二进制文件。文本文件是以字符为单位存储的文件,如.txt、.cpp或.html文件。二进制文件是以字节为单位存储的文件,如.jpg、.exe或.dat文件。
  • 文件的打开和关闭:文件在读写之前必须先打开,使用结束后必须关闭。打开文件需要指定文件名和文件模式,如只读、只写、追加、二进制等。打开文件会返回一个文件流对象,用来标识和访问文件。关闭文件会释放文件流对象和文件资源。
  • 文件的顺序读写:文件的读写可以按照字符、字符串、格式化或二进制的方式进行。常用的文件读写函数有<<、>>、getline、write和read等。文件读写时需要注意文件指针的位置和文件结束符的判断。
  • 文件的随机访问:文件的随机访问可以通过移动文件指针的位置来实现。常用的文件指针移动函数有seekg、seekp和tellg、tellp等。文件指针移动时需要指定基准位置和偏移量,如文件开头、文件结尾或当前位置等。
  • 文件的错误处理:文件的错误处理可以通过检查文件流对象的状态来进行。常用的文件状态函数有is_open、good、bad、fail和eof等。文件状态函数可以判断文件是否打开成功、是否有错误发生、是否到达文件末尾等。

基于AI的学习



代码行数(新增/累积) 学习时间(新增/累积)
目标 2000行 100小时
第一周 50/50 2/2
第二周 50/50 2/2
第三周 50/50 2/2
第四周 50/50 2/2
第五周 300/300 2/2
第六周 300/300 2/2
第七周 200/200 1/1
第八周 200/200 1/1
第九周 200/200 1/1
第十周 150/150 1/1
第十一周 250/250 1.5/1.5
第十二周 200/200 1.2/1.2
第十三周 200/200 1.2/1.2
第十四周 200/200 1.2/1.2

标签:文件,函数,200,二进制,读写,20231313,2024,2023,指针
From: https://www.cnblogs.com/raymongillichmks/p/17933411.html

相关文章

  • 重磅发布|博睿数据2023年度精选案例集—— IT运维之光
    当前,数字经济已经成为全球经济增长的重要引擎。随着新技术的飞速发展,企业数字化转型机遇不断涌现,而稳定、安全、可靠的IT运维环境是实现数字化转型的关键。在此背景下,AIOps智能运维正成为企业高效管控种类繁多数量庞大的物理设备、精准定位故障信息、实时防护网络攻击、快速迭代需......
  • 2024跨年微信背景图
    ......
  • 2024年PMI-ACP考试安排已出,备考攻略请收下
    PMI-ACP®是一种专业认证,旨在验证专业人士在敏捷项目管理方面的知识和技能。对于那些对提高项目管理能力和拓宽职业发展道路感兴趣的人来说,考取PMI-ACP®证书是一个有吸引力的选择。下面一起来了解2024年PMI-ACP®报考相关信息。 2024年PMI-ACP®考试时间:经PMI®和中国国际人才交......
  • 2023 退役记
    CSP第一轮8月份回到学校,开始新一轮的竞赛复习。每天过着刷题、看知识点的生活。9月份开始做初赛题,感觉良好。9.16中午坐车去考点,车上午觉,不知道睡着没有。考场里一堆小学生。几年前我也是他们之中的一员……出来,对了下答案,估计在75~80。稳。膜拜满分大佬。晚上发现有......
  • 2024年3月PMP考试时间已定!尽快完成英文报名!
    2024年3月PMI®考试暂定在3月10日(周日)举办,报名预计在1月10日前后开始。请合理安排学习备考时间,尽早完成英文网站注册。最终报名日期以基金会官网发布的通知为准。 小贴士:计划参加2024年3月考试的考生,如尚未获得PMI®英文有效期,尽快登录PMI®官网进行申请,以免耽误考试报名。需要满......
  • OI练习记录 - 27/12/2023
    早安......
  • 2024年1月传统行业产品经理认证NPDP在这学靠谱
    NPDP产品经理国际资格认证是国际公认的唯一的新产品开发专业认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。我们针对互联网时代的个人、互联网企业、与传统企业推出一系列学习。课程从商业实战角度出发,梳理出在互联网......
  • 2024年1月东莞/深圳CPDA数据分析师认证来这靠谱
    CPDA数据分析师认证是大数据方面的认证,助力数据分析人员打下扎实的数据分析基础知识功底,为入门数据分析保驾护航。帮助数据分析人员掌握系统化的数据分析思维和方法论,提升工作效率和决策能力,遇到问题能够举一反三,为大部分决策难题提供解决方案。帮助数据分析人员掌握几种通用的数据......
  • 2024年1月杭州/广州/深圳DAMA-CDGA/CDGP认证报名到这靠谱
    DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业竞争能力。DAMA是数据管理方面的认证,帮助数据从业者提升......
  • 2024年1月广州/惠州/深圳软考高级信息系统项目管理师招生
    信息系统项目管理师是全国计算机技术与软件专业技术资格(水平)考试(简称软考)项目之一,是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试,既属于国家职业资格考试,又是职称资格考试。信息系统项目管理师,属于软考三个级别中的“高级”。 【报考要求】 不设学历与资历条......