《嵌入式系统程序设计》第五周学习总结

第5周总结
首先用二进制方式向文件读写一组数据,使用fread函数和fwite函数完成。这里读写的数据是指一串固定长度的字节,好比一个int、一个结构体或者一个定长数组等。
其次在实验报告里写入程序代码的含义、使用的编译命令、运行结果
而后把已有的文件进行覆盖而且读出来
理解各个代码的意思
C 库函数 size_t fread从给定流 stream 读取数据到ptr 所指向的数组中。windows

声明函数库size_t fread(void ptr, size_t size, size_t nmemb, FILE stream)数组

ptr 含义是指向带有最小尺寸 size*nmemb 字节的内存块的指针。函数

size 含义是要读取的每一个元素的大小,以字节为单位。spa

nmemb 含义是元素的个数,每一个元素的大小为 size 字节。指针

stream 含义是指向 FILE 对象的指针,该 FILE 对象指定了一个输入流。对象

C函数库fwrite();内存

C 库函数 size_t fwrite把ptr 所指向的数组中的数据写入到给定流 stream中。it

声明格式size_t fwrite(const void ptr, size_t size, size_t nmemb, FILE stream)编译

各个参数的含义跟fread同样stream

它的返回值成功,该函数返回一个 size_t 对象,若是该数字与 nmemb 参数不一样,则会显示一个错误。
一、fread函数和fwrite函数的每一个参数的含义

fwrite和fread是以记录为单位的I/O函数,fread和fwrite函数通常用于二进制文件的输入输出。

(1)size_t fread ( void ptr, size_t size, size_t count, FILE stream );

其中,ptr:指向保存结果的指针;size:每一个数据类型的大小;count:数据的个数;stream:文件指针函数返回读取数据的个数。

(2)size_t fwrite ( const void ptr, size_t size, size_t count, FILE stream );

其中,ptr:指向保存数据的指针;size:每一个数据类型的大小;count:数据的个数;stream:文件指针函数返回写入数据的个数。
其实学到了不少知识 又一次丰富了本身

二进制和文本模式的区别:在windows系统中,文本模式下,文件以"\r\n"表明换行。若以文本模式打开文件,并用fputs等函数写入换行符"\n"时,函数会自动在"\n"前面加上"\r"。即实际写入文件的是"\r\n"在Linux系统中文本模式下,文件以"\n"表明换行。因此Linux系统中在文本模式和二进制模式下并没有区别。

相关文章
相关标签/搜索