freadfread函数

fread  时间:2021-06-07  阅读:()

c语言关于fread的用法具体是怎样的

简介   fread    功 能: 从一个流中读数据    函数原型: size_t fread( void *buffer, size_t size, size_t count, FILE *stream );     参 数:    1.用于接收数据的地址(指针)(buffer)    2.单个元素的大小(size) :单位是字节而不是位,例如读取一个整型数就是2个字节    3.元素个数(count)    4.提供数据的文件指针(stream)    返回值:成功读取的元素个数 程序例 #include    int main(void)    {    FILE *stream;    char msg[] = "this is a test";    char buf[20];    if ((stream = fopen("DUMMY.FIL", "w+"))   == NULL)    {    fprintf(stderr,   "Cannot open output file. ");    return 1;    }   /* write some data to the file */    fwrite(msg, strlen(msg)+1, 1, stream);   /* seek to the beginning of the file */    fseek(stream, 0, SEEK_SET);   /* read the data and display it */    fread(buf, strlen(msg)+1, 1,stream);    printf("%s ", buf);    fclose(stream);    return 0;    }

fread、fwrite怎么使用?

(2).文件随机读写函数 int fread(void *ptr,int size,int nitems,FILE *stream); int fwrite(void *ptr,int size,int nitems,FILE *stream); fread()函数从流指针指定的文件中读取nitems个数据项,每个数据项的长度为size个字节,读取的nitems数据项存入由ptr指针指向的内存缓冲区中,在执行fread()函数时,文件指针随着读取的字节数而向后移动,最后移动结束的位置等于实际读出的字节数。

该函数执行结束后,将返回实际读出的数据项数,这个数据项数不一定等于设置的nitems,因为若文件中没有足够的数据项,或读中间出错,都会导致返回的数据项数少于设置的nitems。

当返回数不等于nitems时,可以用feof()或ferror()函数进行检查。

fwrite()函数从ptr指向的缓冲区中取出长度为size字节的nitems个数据项,写入到流指针stream指向的文件中,执行该操作后,文件指针将向后移动,移动的字节数等于写入文件的字节数目。

该函数操作完成后,也将返回写入的数据项数。

FILE *fp; int x = 10, y; fp = fopen("test.txt", "wr"); fwrite(&x ,sizeof(int), 1, fp);将x写入文件 fwrite((&x ,sizeof(int), 1, fp);将X的值读入到y

C语言中fread,fwrite和fscanf,fprintf的区别,什么是格式化数据

fread:是读取数据 fwrite:是写入数据 1.函数功能 用来读写一个数据块。

2.一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,count,fp); 3.说明 (1)buffer:是一个指针,对fread来说,它是读入数据的存放地址。

对fwrite来说,是要输出数据的地址。

(2)size:要读写的字节数; (3)count:要进行读写多少个size字节的数据项; (4)fp:文件型指针。

注意:1 完成次写操(fwrite())作后必须关闭流(fclose()); 2 完成一次读操作(fread())后,如果没有关闭流(fclose()),则指针(FILE * fp)自动向后移动前一次读写的长度,不关闭流继续下一次读操作则接着上次的输出继续输出; 3 fprintf() : 按格式输入到流,其原型是int fprintf(FILE *stream, const char *format[, argument, ...]);其用法和printf()相同,不过不是写到控制台,而是写到流罢了。

注意的是返回值为此次操作写入到文件的字节数。

如int c = fprintf(fp, "%s %s %d %f", str1,str2, a, b) ;str1:10字节;str2: 10字节;a:2字节;b:8字节,c为33,因为写入时不同的数据间自动加入一个空格。

4.fscanf 和 scanf 相似 :当能正常读入数据时, fscanf 返回读入数据的个数,否则返回 EOF 。

c语言中fread函数怎么用

如果你想把这8个字节当成一个数来读的话可以这样(在VC环境下) __int64 a; fread(&a,sizeof(__int64),1,fp); 如果你想分别读出这8个字节的话,可以这样: char a[8]; fread(a,sizeof(char),8,fp); 希望对你有帮助 __int64也可以用来表示一个整数,只不过它能表示的范围比int类型的要大,int类型占4个字节,而这个__int64占8个字节。

如果你用的是编译器(像DEV-C等),那应该是long long

fread函数

fread (void*buffer,size_tsize,size_tcount,FILE*stream) ;其中buffer用于接收数据的内存地址,大小至少是size*count字节;.size单个元素的大小,单位是字节;count元素的个数,每个元素是size字节;stream输入流 返回值:实际读取的元素个数.如果返回值与count不相同,则可能文件结尾或发生错误. 从ferror和feof获取错误信息或检测是否到达文件结尾. 例如: #include <stdio.h> #include <string.h> int main(void) { FILE *stream; char msg[] = "this is a test"; char buf[20]; if ( (stream = fopen("DUMMY.FIL", "w+")) == NULL) { fprintf(stderr,"Cannot open output file. "); return 0; } /* write some data to the file */ fwrite(msg, strlen(msg) + 1, 1, stream); /* sizeof(char)=1 seek to the beginning of the file */ fseek(stream, 0, SEEK_SET); /* read the data and display it */ fread(buf, strlen(msg) + 1, 1, stream); printf("%s ", buf); fclose(stream); return 0; }

华圣云 HuaSaint-阿里云国际站一级分销商,只需一个邮箱即可注册国际账号,可代充值

简介华圣云 HuaSaint是阿里云国际版一级分销商(诚招募二级代理),专业为全球企业客户与个人开发者提供阿里云国际版开户注册、认证、充值等服务,通过HuaSaint开通阿里云国际版只需要一个邮箱,不需要PayPal信用卡,不需要买海外电话卡,绝对的零门槛,零风险官方网站:www.huasaint.com企业名:huaSaint Tech Limited阿里云国际版都有什么优势?阿里云国际版的产品...

个人网站备案流程及注意事项(内容方向和适用主机商)

如今我们还有在做个人网站吗?随着自媒体和短视频的发展和兴起,包括我们很多WEB2.0产品的延续,当然也包括个人建站市场的低迷和用户关注的不同,有些个人已经不在做网站。但是,由于我们有些朋友出于网站的爱好或者说是有些项目还是基于PC端网站的,还是有网友抱有信心的,比如我们看到有一些老牌个人网站依旧在运行,且还有新网站的出现。今天在这篇文章中谈谈有网友问关于个人网站备案的问题。这个也是前几天有他在选择...

Atcloud:全场8折优惠,美国/加拿大/英国/法国/德国/新加坡vps,500g大硬盘/2T流量/480G高防vps,$4/月

atcloud怎么样?atcloud刚刚发布了最新的8折优惠码,该商家主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御。Atcloud高防VPS。atcloud.net,2020年成立,主要提供基于KVM虚拟架构的VPS、只能DNS解析、域名、SS...

fread为你推荐
企业资源管理系统企业内部管理系统有哪些chrome系统Chrome OS是什么系统?awv如何把普通电影转换成AWV印度尼西亚国家代码手机上的国家代码是什么qq网络硬盘我QQ的网络硬盘怎么啦?asp大马一句话木马中的大马和小马的作用各是什么?天翼校园宽带天翼校园宽带 是怎么算时间的 一个月 是指从办理那天开始 往后 30天是一个月吗 还是 办理的那天所在的那个微软操作系统下载怎么下载官方win10 64位镜像系统微软操作系统下载怎样在微软官网下载windows7 64位旗舰版收费视频怎么制作收费视频
域名网 免费com域名申请 樊云 优惠码 500m空间 国外在线代理 新天域互联 百度云1t 七夕快乐英语 域名与空间 移动服务器托管 架设邮件服务器 外贸空间 photobucket 万网注册 数据湾 googlevoice shuangcheng so域名 cc加速器 更多