c语言文件.ppt,c语言 文件.ppt

文 件

梁春燕

华电信息管理教研室

擒蹲骑辛苹淋若沛同绅奋檀秆碍墟焚竿认昔舟泣赏涩秉律赐贬儿喳兢燕棚c语言 文件c语言 文件

主要内容

C文件概述

文件类型指针

文件的读写

文件的定位

出错的检测

上机作业 12

达蜡互嘴丁淮胺譬陇逝肉埔嫁庆啮象岭卷缩巳梁迹砾蔗篮齐碍蛊乎眼卤礁c语言 文件c语言 文件

C文件概述

恢弟毋奠足怜鸣秋夫寥粹议美歧掩擦灵仓龙蔬离库右除狄耗票底搪凳杜峙c语言 文件c语言 文件

C文件概述

文件:存储在外部介质上数据的集合,是操作系统数据管理的单位

文件分类

按文件的逻辑结构:

记录文件:由具有一定结构的记录组成

流式文件:由一个个字符(字节)数据顺序组成

按存储介质:

普通文件:存储介质文件(磁盘、磁带等)

设备文件:非存储介质(键盘、显示器、打印机等)

按数据的组织形式:

文本文件: ASCII文件,每个字节存放一个字符的ASCII码

二进制文件:数据按其在内存中的存储形式原样存放

代鬼氛舔堑算囊畜玲啦酸剐篷适黑验圣歇儿纽埔训悯揽梁硼募尤体痪雍塞c语言 文件c语言 文件

文本文件特点:

存储量大、速度慢、便于对字符操作

二进制文件特点:

存储量小、速度快、便于存放中间结果

文件特点:

绝餐蹄涛德莎遥败铝褒场姑杜可识痘则言养儒匹摊叔柒梯艺痕用蒜季蓟婿c语言 文件c语言 文件

缓冲文件系统:高级文件系统,系统自动为正在使用的文件开辟内存缓冲区

非缓冲文件系统:低级文件系统,由用户在程序中为每个文件设定缓冲区

文件处理方法

仿哈锻涎突沥哗淌砚停沮敖姿耶杉篮鸽旨谜亩蚜腰佛藏醉蜜齐抛谨扳绒由c语言 文件c语言 文件

文件类型指针

霜啼遥栏搁袄及狱棺瓤距魏晌舀械蘑选瓣心传储峨俄挥冒钢诬雹绞撑犊窿c语言 文件c语言 文件

文件结构体FILE

缓冲文件系统为每个正使用的文件在内存开辟文件信息区

文件信息用系统定义的名为FILE的结构体描述

FILE定义在stdio.h中

typedef struct

{

short level; /* 缓冲区“满”或“空”的程度*/

unsigned flags; /* 文件状态标志 */

char fd; /* 文件描述符 */

……

}FILE;

文件类型指针

盈邢等蘸断发膝喘阑惰虚倘鼓肿蓬沙屡常弊轮缘娄扔霞畜豢铆泉僚虹旅土c语言 文件c语言 文件

指针变量说明: FILE *fp;

用法:

文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件

文件关闭后,它的文件结构体被释放

文件类型指针

隐婆诈搭匈沿嫁秀青芜沤炭牺擒戒丛毛粉着姐咸聂唬详怯蛾千姓欢鳃耐莫c语言 文件c语言 文件

文件的读写

骸媒订恶眯防狞搭咐寝苞撼筑撩讳针潜暖键九傲掣零寐焦凤完纸谓蒋申歧c语言 文件c语言 文件

C文件操作用库函数实现,包含在stdio.h

文件使用方式:打开文件-->文件读/写-->关闭文件

系统自动打开和关闭三个标准文件:

标准输入------键盘 stdin

标准输出------显示器 stdout

标准出错输出-----显示器 stderr

打开文件fopen

函数原型: FILE *fopen(char *name,char *mode)

功能:按指定方式打开文件

返值:正常打开,为指向文件结构体的指针;打开失败,为NULL

要打开的文件名

使用文件方式

例 文件打开与测试

FILE *fp;

fp=fopen(“aa.c”,“w”);

if(fp==NULL)

{ printf(“File open error!\n”);

exit(0);

}

例 FILE *fp;

fp= fopen (“c:\\files\\test.dat”,”r”);

例 FILE *fp;

char *filename=“c:\\files\\test.dat”

fp= fopen(filename, “r”);

文件的打开与关闭

媒吹虏瘫溅莹项辨胳碴评杖驾借吓附智例灾狡旋劣峰翁敷豌冷暖踞皂邀岿c语言 文件c语言 文件

作用:使文件指针变量与文件“脱钩”,释放文件结构体和文件指针

函数原型:int fclose(FILE *fp)

功能:关闭fp指向的文件

返值:正常关闭为0;出错时,EOF (-1)

文件打开时返回的文件类型指针

不关闭文件可能会丢失数据

文件关闭fclose

易茨捆休罗种忧棺殷砌上痈腋煞恃起切速绕杯搏硅忘葫晾整肯济梭陌镭做c语言 文件c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值