已解决
顺序读写函数的介绍:fread fwrite
来自网友在路上 166866提问 提问时间:2023-09-27 17:41:06阅读次数: 66
最佳答案 问答题库668位专家为你答疑解惑
目录
函数介绍:
fwrite:
参数说明:
函数大意:
举例:
文件效果:
fread:
函数大意:
举例:
结果展示:
函数介绍:
fwrite:
参数说明:
- const void*potr: 指针指向要写出数据的内存首地址
- size t size: 要写出数据的 基本单元的字节大小,写出单位的大小
- size t nmemb:要写出数据的 基本单元的个数
- FILE*stream: 打开的文件指针
函数大意:
把一个内存空间中的数据,按照要求以二进制的形式写进文件中,要求就是写入几个元素,以及要知道元素的字节大小是多少。
举例:
int main()
{int arr[] = { 1,2,3,4,5,6,7 };FILE* pf = fopen("data.txt","wb");if (pf == NULL){ perror("fopen");return 1;}fwrite(arr,sizeof(int),7,pf);fclose(pf);pf = NULL;return 0;
}
注意: 注意因为fwrite是二进制的形式写入文件中,所以打开文件的时候应该使用wb
wb用法:http://t.csdn.cn/Iq0qH
文件效果:
因为是二进制写入,所以在文件文本是看不到内容的,所以我们使用rb进行读取数据看是否正确,而这时候就要使用fread
fread:
函数大意:
参数内容和fwrite一样,但意思是,以二进制的形式对文件中的数据进行读取,按照要求读取后,放入指定的空间内存中,读取要求是读取的元素个数,以及要知道元素的字节大小,和fwrite是反着来的。
举例:
int main()
{int arr[10] = {0};FILE* pf = fopen("data.txt","rb");if (pf == NULL){perror("fopen");return 1;}fread(arr,sizeof(int),7,pf);int i = 0;for (i = 0;i< 10;i++){printf("%d\n",arr[i]);}fclose(pf);pf = NULL;return 0;}
在fwrite在文件中放入七个元素的基础上使用fread读取文件中的七个元素,注意如果读取的个数超过了文件中元素的个数,那么剩下的部分会因为二进制放入的原因,变成0进行补充。
结果展示:
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"顺序读写函数的介绍:fread fwrite":http://eshow365.cn/6-14789-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!