作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK14
作业目标:自学《c语言程序设计》第十三章
作业正文:
教材学习内容总结
《c语言程序设计》
文件操作是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语言和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的学习
学习进度条
代码行数 | 博客数 | 学习时间 | |
目标 | 5000 | 30 | 400 |
第一周 | 200/200 | 2/2 | 20/20 |
第二周 | 300/300 | 4/4 | 28/28 |
第三周 | 500/500 | 6/6 | 30/30 |
第四周 | 500500 | 8/8 | 30/30 |
第五周 | 600/600 | 9/9 | 35/35 |
第六周 | 800/800 | 10/10 | 40/40 |
第七周 | 1000/1000 | 12/12 | 45/45 |
第八周 | 1200/1200 | 14/14 | 48/48 |
第九周 | 1400/1400 | 15/15 | 52/52 |
第十周 | 1600/1600 | 17/17 | 56/56 |
第十一周 | 1800/1800 | 18/18 | 60/60 |
第十二周 | 2000/2000 | 19/19 | 64/64 |
第十三周 | 2200/2200 | 20/20 | 68/68 |
第十四周 | 2400/2400 | 21/21 | 72/72 |