- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文件指针和字符串输入形式
概述
1.文件指针
FILE *fp;
2.打开文件
FILE *fp;
fp=fopen(“file_a”,”r”) 指针fp指向了文件file_a
“w” 或”w+”每次打开文件将从文件的起始位置开始写,文件中原有内容将全部消失。
“a”或”a+”每次打开文件时将在原有内容的后面添加数据,文件中原有内容将保存。
“r+”为了读和写打开文本文件,读和写总是从文件的起始位置开始,写时只是依次覆盖原有内容,未覆盖到的将保留。例3
3.关闭文件
fclose(fp)
4.对文件进行字符的输入和输出函数
putc(ch,fp)或fputc(ch,fp):将字符ch写到文件指针fp所指的文件中去。
ch=getc(fp)或ch=fgetc(fp):从fp指定的文件中读入一个字符赋给变量ch.
5.判断文件结束函数feof()
如果遇到文件结束,函数feof(fp)的值为1,否则为0
6.从文件中读取数据给电脑:fscanf(fp,”%d%d”,a,b) 从fp所指的文件中读入两个整数放入变量a和b中,在文件中的两个整数之间是用空格(或回车符、跳格符)隔开的
将运行结果存入到文件中:fprintf(fp,”%d%d”,x,y)把x和y两个整型变量中的整数按%d的格式输出到fp所指的文件中。为了以后便于读入,两个数之间应当用空格隔开。例2, 例5
7.读写字符串函数
fgets(str,n,fp)从fp所指文件中读入n-1个字符放入以str为起始地址的空间内,读入过程中读到换行符或一个EOf,则结束读入。读入结束后,系统自动在最后加’\0’。
fputs(str,fp)把以str为首地址的字符串输出到fp所指的文件中,字符串中最后的’\0’并未输出到文件中,也不自动在文件中该字符串末尾加’\n’,因此文件中各字符串是首尾连接的,为了便于读入,在输出字符串时,应当注意人为地加’\n’这样的字符。例4
8.fread(buffer,size,count,fp)从fp所指文件中读取count个,每个大小为size的数据块放入以buffer为首地址的空间里。
fwrite(buffer,size,count,fp)把以buffer地址开始的count个数据块,每个数据块类型为size的数据输出到fp所指文件中。例1, 例6
9.文件定位函数
若fp指向二进制文件,可以有位移量:seek_set 文件开始 seek_end 文件末尾 seek-cur文件当前位置
fseek(fp,30l,seek_set)使文件位置指针从文件的开头后移30个字节
fseek(fp,-10l*sizeof(int),seek_end) 使文件位置指针从文件尾部前移10个sizeof(int)
若fp指向文本文件,位移量必须是0
fseek(fp,0l,seek_set) 使文件位置指针移到文件开始
fseek(fp,0l,seek_end) 使文件位置指针移到文件末尾
10.rewind(fp) 使文件位置指针回到文件开头。
例题
例1:有以下程序
#include stdio.h
main()
{ FILE *pf;
char *s1=〞China〞,*s2=〞Beijing〞;
pf=fopen(〞abc.dat〞,〞wb+〞);
fwrite(s2,7,1,pf);
rewind(pf);
fwrite(s1,5,1,pf);
fclose(pf);
}以下程序执行后abc.dat文件的内容是B
A) China B) Chinang
C) ChinaBeijing D)BeijingChina
例2:有以下程序
#include stdio.h
main()
{FILE *fp; int a[10]={1,2,3},i,n;
fp=fopen(“dl.dat”,”w”);
for(i=0;i3;i++) fprintf(fp,”%d”,a[i]);
fprintf(fp,”\n”);
fclose(fp);
fp=fopen(“dl.dat”,”r”);
fscanf(fp,”%d”,n);
fclose(fp);
printf(“%d\n”,n);
}
程序的运行结果是 B 从文件中读取整型数据时读到间隔符(回车、空格等)结束
A)12300 B) 123 C) 1 D) 321
例3:有以下程序
#include stdio.h
main()
{FILE *f;
f=fopen(“filea.txt”,”w”);
fprintf(f,”abc”);
fclose(f);
}
若文
您可能关注的文档
- 乡当前辣椒种植存在问题.doc
- 乡镇是我国最基层政权.doc
- 乡镇人大工作存在问题和对策浅析.doc
- 五味对五脏诉说.ppt
- 五大交易循环交易环节.doc
- 五年级上册科学概念与知识要点第四单元.doc
- 五年级上册第三单元 地球表面和其变化 教案.doc
- 五下第七课衣架联想.doc
- 五年级美术 色彩对比 说课.doc
- 五年级语文上册 小苗和大树对话5教案 人教新课标版.doc
- 化妆品公司动力部年度总结.pptx
- 七年级下册(2024)第六单元课外古诗诵读之《约客》课件(共26张PPT).pptx
- 24《寓言四则》优质课教学课件(共15张PPT).ppt
- 七年级下册(2024)第六单元课外古诗诵读之《竹里馆》课件(共26张PPT).pptx
- LIMS供应商概览与技术标书.pdf
- 线缆厂薪酬核算管理规章.doc
- 《课外古诗词诵读——逢入京使 》课件(共22张PPT)2025—2026学年统编版语文七年级下册.pptx
- 《课外古诗词诵读——贾生》课件(共22张PPT)2025—2026学年统编版语文七年级下册.pptx
- 7 谁是最可爱的人 课件 (共20张PPT) 2025-2026学年统编版语文七年级下册.pptx
- 电池厂叠片机配件管理规范规章.doc
原创力文档


文档评论(0)