fwrite函数
头文件 | 原型 | 说明 | 返回值 |
---|---|---|---|
#include <stdio.h> | size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream); | 从ptr指向的数组中将最多nmemb个长度为size的元素写入stream指向的流中。若定义了流的文件位置指示符,则以成功写入的字符数为单位向前移动。当发生错误时,该流的文件位置指示符的值不可预测。 | 返回成功写入的元素个数。仅当发生写入错误时,元素个数会少于nmemb。 |
fread函数
头文件 | 原型 | 说明 | 返回值 |
---|---|---|---|
#include <stdio.h> | size_t fread(const void *ptr, size_t size, size_t nmemb, FILE *stream); | 从stream指向的流中最多读取nmemb个长度为size的元素到ptr指向的数组。若定义了流的文件位置指示符,则以成功读取的字符数为单位向前移动。当发生错误时,该流的文件位置指示符的值不可预测。只读取到某一元素的部分内容时,值不可预测。 | 返回成功读取的元素个数。当发生读取错误或达到文件末尾时,元素个数会少于nmemb。若size或nmemb为0,则返回0.这时数组内容和流的状态都不发生变化。 |
fwrite函数 和 fread函数
这两个函数会接收4个参数:
PI.bin文件:
#include <stdio.h>
int main(void){
FILE *fp;
double pi = 3.14159265358979323846;
printf("从变量pi得到的圆周率为%23.21f。\n", pi);
if ((fp = fopen("PI.bin", "wb")) == NULL){
printf("文件打开失败。\n");
} else {
fwrite(&pi, sizeof(double), 1, fp);
fclose(fp);
}
if ((fp = fopen("PI.bin", "rb")) == NULL){
printf("文件打开失败。\n");
} else {
fread(&pi, sizeof(double), 1, fp);
printf("从文件读取的圆周率为%23.21f。\n", pi);
fclose(fp);
}
return 0;
}
运行结果:
fwrite(&pi, sizeof(double), 1, fp);
fread(&pi, sizeof(double), 1, fp);
第二参数 sizeof(double) 指定了 double型的长度,第三个参数指定了要读写的变量个数为 1个。
本文地址:https://blog.csdn.net/qq_44989881/article/details/107300840
如对本文有疑问, 点击进行留言回复!!
荐 灵活使用线程池 & 创建用户账号信息SQL数据库--社交APP-笔记整理
PostgreSQL select for update指定列(兼容oracle)
SQL语句中的WHERE、聚合函数(SUM、MIN、MAX、AVG、COUNT)、HAVING
sql server登录名、服务器角色、数据库用户、数据库角色、架构区别联系
网友评论