版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、9文件,解析c程序设计第2章简单计程仪程序设计,2、文件系统、缓冲型文件系统:系统自动在存储器中按每个文件打开缓冲器,作为程序计程仪程序和磁盘文件数据交换的中间介质,每3步用习语言的程序库函数实现, 解析c方案设计第2章简单方案计程仪方案设计、3、文件投入产出相关库函数、# include open:fopen (); 读写: fgetc (); fputc (); fgets (); fputs (); fread (); fwrite (); fscanf (); fprintf (); 文件位置指针rewind (); fseek (); ftell (); feof (); 关闭: f
2、close (); 法宝:每个库函数都可以在调用时查询。 输入TC:CTRL F1 VC函数名称,则会显示函数形式的关残奥字仪表。 c方案设计第2章简单方案计程仪设计,4,需要解决的问题1 :将学生信息保存在文件中,从文件转入数组,# include # definen 30 structstucharname 10; 英数; 英格; 卡尔阿德德尔15; 解析c方案设计第2章简单方案计程仪设计、5、1、输入学生信息存储排列、void main() struct stu boyaN、boybN、*pp、*qq; 文件* FP; 定义指向文件类型的指针fp*/int i的打印数据(I=0,PP=博
3、雅; iname,FILE类型在stdio.h文件中定义。 类型结构输入级别; 缓冲区是满还是空*/unsigned flags; /*文件状态标志*/char fd; /*文件描述符* /未指定的卡片保持; 没有缓冲区不读字符* /短大小; /*缓冲区大小* /未指定的char *缓冲区; /*数据缓冲区的位置* /未签名的char * curp; /*文件定位指针* /未标识的is temp; /*用于临时文件指示器* /短令牌/*有效性检查* /文件; 解析c计程仪编程第2章简单计程仪编程,6,2,保存文件(打开文件-保存-关闭文件),/*首先打开文件*/if(fp=fopen(stu_
4、list.dat,WB ) )=null ) printf (cannen ); exit(1)、文件名(char *文件名、char *类型)示例:文件名是文件名的包含路径。 如果没有路径,则打开当前目录查询的文件的类型是r、w、rw和a,其中只读、只读、读/写,附加的“b”表示二进制文件,如果不写入“b”,则文本文件的返还值是指向该文件的指针存储在ASCII查询密码文件中的格式: 3、0、0、0、0、(5字节)存储在二进制文件中的格式:30000的补码(2字节)、11101010 01100000、两者的特征: ASCII文件浪费了空间和时间, 直观的二进制文件节省空间和时间,非直观的解析
5、c程序设计第2章简单计程仪程序设计,7,2,保存文件(打开文件-保存-关闭文件),/*保存文件(打印到文件) */for(i=0,pp=boya; 名称,PP -编号,pp-age,pp-addr; int fprintf(FILE *fp、char *format、arg1、argn )函数:也可以在所有存储的字符类型中使用fwrite(pp,sizeof(struct stu ),1,fp ) 、unsigned fwrite(void *ptr,unsigned size,unsigned numb,FILE *fp )函数功能:将从ptr开始的numb个size大小的数据标签摇滾乐写入
6、fp所指向的文件中,函数调用为count的写字符或字符串时,请使用fputc ()和fputs ()、int fputc(int c,FILE *fp ); 功能:如果对fp的字母c输出错误则返回EOF,否则返回c例: fputc(a,fp ); /*将文字a写入fp指向的文件*/,int fputs(char *s,FILE *fp )的功能:将文字列写入fp指向的文件成功时为0,错误时为EOF例: fputs(“abcde”,fp ); /*将字符串写入fp指向的文件*/中,c plug计程仪编程第2章简单计程仪编程,8,2,保存文件(打开文件-保存-关闭文件),/*最后关闭文件*/fcl
7、ose(fp ),int fclose(FILE *fp ) 返还值:关闭成功时的返还值为0。 否则(例如,磁盘空间不足、受写保护或关闭封闭的文件)返回EOF或-1。解析c计程仪编程第2章简单计程仪编程,9,3,从文件读入数组(打开文件-读入数组-关闭文件),if(fp=fopen(stu_list.dat,Rb ) )=null ) printf (cannen ); 出(2)个(I=0; 输出到iname、stdout文件后,输出到屏幕上。 实际上,来自牛鼻子板的输入、到屏幕的输出、错误都以文件形式存储信息。 这三个标准defile分别是stdin、stdout和stderr,从用户的角度
8、对文件进行分类,分为标准defile和普通磁盘文件。 c方案设计解析第2章的简单方案计程仪设计,10,需要解决的问题2 :复制文件,输入两个文件名,打开两个文件,将一个文件的内容复制到另一个文件,关闭两个文件,c方案计程仪,第2章简单方案计程仪,1 朝鲜、文件130、文件230; 打印(输入源文件3360 )扫描(% s,文件1 )/*源文件名* /打印(输入对象文件3360 )扫描(% s,文件2 )/*目标文件名*/if (FP1=foff exit(1) /*打开源文件*/if (FP2=fopen (文件2,w)=fp2=stdout; /*打开目标文件,如果找不到则输出到屏幕*/*从
9、源文件读取字符并写入目标文件*/while(ch=fgetc(fp1) ) )!=EOF) fputc(ch,fp2) fclose(fp1) /*关闭两个文件*/fclose(fp2)、解析c编程计程仪第2章简单计程仪定编程、12,/* copy.c */#包含# includevoidmain (I 查尔斯; 魔法少女=3) puts (错误在参数中! ); 打开源文件(1)/*打开源文件(FP2=打开(argv 2,w ) )=fppt /*打开目标文件,如果找不到则输出到屏幕*/*从源文件读取字符并写入目标文件*/while(ch=fgetc(fp1) ) )!=EOF) fputc(
10、ch,fp2) fclose(fp1) /*在编译同时关闭两个文件的*/fclose (FP2)/*堆计程仪栏之后,可以在dos命令行中输入三个残奥参数来执行此操作。 第一个是普计程仪栏的名称copy,第二个是源文件名,第三个是营销对象文件名。 整个计程仪程序的功能是实现文件复制*/的c程序计程仪程序设计第2章简单计程仪程序设计,13、分析随机读写文件的方法吗? 对上一份文件的读写都是从头到尾依次读(写)。 如何只读写文件的一部分呢? 除了FILE *类型的指针fp指向文件的开头之外,char *类型的文件指针curp还指向文件中的下一个要读取(写入)的字符。 通过改变curp的位置可以进行随
11、机的读写。、c计程仪编程第2章简单计程仪编程、14、若干相关函数、void rewind(FILE *fp )功能:将fp内的文件位置指针移动到文件开始位置int fseek(FILE *fp,long offset, int fromwhere )的功能:将fp内的文件位置指针置于相应的位置fromwhere: SEEK_SET或0-文件开始SEEK_CUR或1-当前位置SEEK_END或2-文件末尾long ftell 功能:返回fp中文件位置指针所在位置int feof(FILE *fp )的功能:如果文件位置指针指向fp的末尾,则返回非零值;否则返回0示例: while (feof (
12、FP )=0) c=fgetc c柱计程仪设计第2章简单柱计程仪设计,15、#包括结构树char name 10; 英数; 英格; 卡尔阿德德尔15; boy,*qq=,示例3,解析c计程仪编程第2章简单计程仪编程,16,示例4 :柱结构:浮动fun1(浮动x )/*函数1定义* /浮动fun2(浮动x )/*函数2定义* /浮动集成(浮动) 浮点a浮点b) /*积分函数定义*/void main () y1=对integral (fun 1,a,b) /*函数1进行积分*/y2=对integral (fun 2,a,b) /*函数2进行积分*/*实际尺残奥参数是函数名,波形残奥参数是函数指针,函数名是函数的参数这是指向返还值为int的函数的*/指针初始化,其中p=max; /*f是指f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小小创意家:手工制作课件小学主题班会课件
- 小学主题班会课件:感恩父母,尊敬师长
- 诚信为本勤奋为径-小学主题班会课件探讨
- 护士实习生出科试题(附答案)-1
- 一年级下楼题目及答案大全
- 科学防护新冠凝聚校园力量小学高年级主题班会课件
- 会议组织优化提高会议产出效率方案
- 远离毒品侵害共建无毒健康校园二年级主题班会课件
- 热解气化垃圾处理施工方案及技术措施
- 数据分析报告三步法撰写指南
- PDCA循环助力护理质量持续改进
- 辽宁省七校协作体2025-2026学年高二下学期6月练习化学试卷(图片版含答案)
- 2026年东营市人民医院医护人员招聘笔试参考试题及答案详解
- 2026年辽宁锦州农垦(集团)有限公司计划招录29人备考题库及1套完整答案详解
- 华南理工大学2026年强基计划面试模拟试题及答案解析
- 宝宝换牙教学课件
- 码头租赁合同
- 国家开放大学一网一平台电大《建筑测量》实验报告1-5题库
- 非织造学-第九章-熔喷工艺课件
- 舒曼《交响练习曲》详解
- 某立交桥维修加固(实施)施工组织设计设计
评论
0/150
提交评论