北京理工大学C语言程序设计第十二章文件

2000年1月25日 北京理工大学 / 第十二章 文件 第一节 文件概述 第二节 文件的处理 第三节 文件的顺序读写操作 第四节 文件的随机读写操作 第五节 文件操作的状态和出错检测 第六节 应用实例 §12-1 文件概述 什么是文件 文件:存储在外部介质上(如磁盘和磁带等外存储器)数据或信息的集合。 例如:程序文件中保存着程序,而数据文件中保存着数据。 C12_102.C: C语言的源程序文本文件 C12_102.OBJ:目标文件二进制文件 C12_102.EXE:可执行文件二进制文件 文件的性质 文件是一个有序的数据序列。文件的所有数据之间有着严格的排列次序的关系(类似数组类型的数据),要访问文件中的数据,必须按照它们的排列顺序,依次进行访问。 §12-1 文件概述(续1) 系统对文件的处理过程 系统对文件的处理过程就是对文件进行输入/输出操作的过程。 文件输入/输出的一般过程: §12-1 文件概述(续2) 文件的分类 ◆ 从文件数据的组织形式看 数据的组织形式是指数据在磁盘上是以什么格式进行存储的。 从这个角度看,文件分为两类: ★ ASCII文件(或称文本文件,即TEXT文件) ★ 二进制文件  文本文件中保存的数据,采用ASCII码作为存储方式,先将全部数据转换为ASCII码形式。每个ASCII字符占用一个字节。 ASCII文件在DOS操作系统下可以直接阅读。 二进制文件中保存的数据,是将数据在内存中二进制存储格式不做任何转换,直接存入文件中。 二进制文件在操作系统下不能直接阅读。 §12-1 文件概述(续3) 两种文件组织形式 ◆ 例如:将整数1024存储在不同组织形式的文件中。 §12-1 文件概述(续3) §12-1 文件概述(续4) ◆ 从用户观点看,文件可分为两类: ▼普通文件(亦称为磁盘文件) ▼特殊文件(亦称为标准设备文件或标准I/O文件) 普通文件是以磁盘为对象且无其它特殊性能的文件。 特殊文件是以终端为对象的标准的设备文件。 在C语言中,“文件”的概念具有更广泛的意义,它把与每台主机相连的所有输入输出设备都看作是一个文件。即把实际的物理设备抽象为逻辑文件,它们也被称为设备文件。 例如:键 盘是输入文件stdin (标准输入文件) 显示器是输出文件stdout(标准输出文件) 打印机是输出文件PRN §12-1 文件概述(续5) ◆ 从C语言对文件的处理方法看 从C语言对文件的处理方法来看,可以将文件分为两类: ▲缓冲文件系统 ▲非缓冲文件系统 缓冲文件系统:对每个正在使用的文件,系统自动在内存中为其开辟一个文件缓冲区。也称为高级文件操作。 非缓冲文件系统:系统不会自动开辟缓冲区,文件缓冲区是由程序自己设置的。也称为低级文件操作。 在83年以后ANSI C标准中取消了非缓冲文件系统,对文本文件和二进制文件均统一采用缓冲文件系统进行处理。 本课程学习在缓冲式文件操作方式下,对磁盘文件进行基本操作操作。 §12-2 文件的处理 文件类型指针 在缓冲文件系统中,对每个正在使用的文件都要说明并使用一个FILE类型的结构变量,该结构变量用于存放文件的有关信息,如文件名、文件状态等。 在C语言中,无论是一般磁盘文件还是设备文件,都要通过文件结构的数据集合进行输入输出处理。 文件结构不需要用户自己定义,是由系统事先已经定义好的,固定包含在头文件 stdio.h 中。 §12-2 文件的处理(续1) typedef struct { short level; /* 文件缓冲区中剩余的字节数 */ unsigned flags; /* 文件状态标志 */ char fd; /* 文件描述符 */ unsigned char hold; /* 缓冲区满时丢失的字符 */ short bsize; /* 文件缓冲区大小 */ unsigned char *buffer; /* 文件缓冲区地址 */ unsigned char *curp; /* 文件读写下一个字符位置 */ unsigned istemp; /* 临时文件指针 */ short token; /* 校验符 */ } FILE ; FILE是文件结构类型的类型名。 §12-2 文件处理(续2) 文件指针

c语言压缩文本文件北京理工大学,北京理工大学C语言程序设计第十二章文件.ppt...相关推荐

  1. c语言翻译时为0运行为2,高级语言程序设计:、二章习题解答

    1.1 单项选择题 1.二进制语言是属于( ) ①面向机器语言    ②面向问题语言    ③面向过程语言    ④面向汇编语言 [解]人们研制了许许多多计算机程序设计语言,其中二进制语言直接来自计算 ...

  2. C语言 第十二章 文件

    文章目录 1 二进制文件和文本文件 2 缓冲文件系统与文件指针 2.1 缓冲文件系统 2.2 文件指针 3 文件的打开和关闭 4 文件的顺序读/写 4.1 文件访问步骤 4.2 字符 4.3 字符串 ...

  3. 价值4500的国际版多语言点赞抖音分享点赞任务平台源码(十二种语言)

    介绍: 平台会员分享给我的,他自己搭建成功了,测试可用!我就不测试了,需要的拿! 九种语言 :西班牙语,泰语.日语,印度尼西亚语言.越南语言.英文.繁体中文,简体中文,印度语 前台支持更换5种颜色风格 ...

  4. 谭浩强c语言不讲位运算呢,谭浩强C语言教程第十二章-位运算.doc

    谭浩强C语言教程第十二章-位运算 12位运算1 12.1位运算符C语言提供了六种位运算符:1 12.1.1按位与运算1 12.1.2按位或运算2 12.1.3按位异或运算2 12.1.4求反运算3 1 ...

  5. R语言实战笔记--第十二章 重抽样(置换检验)与自助法

    R语言实战笔记–第十二章 重抽样(置换检验)与自助法 标签(空格分隔): R语言 重抽样 自助法 置换检验 置换检验 双样本均值检验的时候,假设检验的方法就是,检查正态性.独立性.方差齐性,分别对应的 ...

  6. c语言中,x-y,'105',ab,7f8那个是正确的,C语言程序设计_第三章 数据.ppt

    C语言程序设计_第三章 数据 * 运算符功能 与运算量关系 要求运算量个数 要求运算量类型 运算符优先级别 结合方向 结果的类型 学习运算符应注意 * 基本算术运算符: + - * / % 结合方向: ...

  7. c语言求100∑k=1k 30,C语言程序设计〔第三章〕.ppt

    C语言程序设计[第三章] C 语言程序设计 第三章 程序控制结构 集美大学计算机学院 本章主要内容 程序设计方法简述 选择结构程序设计 if -else 语句 switch语句 循环结构程序设计 四种 ...

  8. 北理工c语言压缩文本文件,北理工C语言2(推荐文档).docx

    2-1.编程,输出200以内所有完全平方数 C (满足C2=A2+B2)及其个数. 结果:254个C: No. C A B TOC \o "1-5" \h \z 534 543 1 ...

  9. 多元统计分析及R语言建模(王斌会)第十、十一、十二章答案

    3)我国工农业产业系统的典型相关分析:首先将工业内部五个结构比重变量作为第一组分析变量:以农业产品为原料的生产部门的产值占总工业部门产值的比重:以非农业产品为原料的生产部门的产值占总工业部门产值的比重 ...

最新文章

  1. 华为AI再进化,CANN 3.0释放「算力狂魔」
  2. Python回调函数用法实例
  3. dhcp 续约review报文_Linux的私房菜 DHCP
  4. js 用submit()方法提交表单,页面闪退问题以及解决方法
  5. 【通关计划】进入IT培训魔域这个红海,ITbegin为何选择从高校编程教
  6. unicode官网 unicode码表和标准下载
  7. 前端缓存之HTTP缓存(二)
  8. 吴恩达深度学习课程第二章第一周编程作业
  9. linux的pascal语言,pascal语言视频教程 Linux GCC常用命令详解
  10. mysql主键和候选键有什么区别?
  11. 360无线网怎么没有网络连接到服务器,360路由器设置成二级路由器教程 | 192路由网...
  12. html5对锚的更改,HTML5之锚链接
  13. amazon账号关联|这三点要记牢
  14. 从奶茶品牌【茶颜悦色】看互联网的品牌保护
  15. 亚马逊海外购最受中国Prime会员喜爱的十大品牌(内含榜单)
  16. openwrt wifi 出现missing ACKs和deauthenticated due to inactivity 频繁掉线问题解决方案
  17. 【PyTorch训练中Dataset多线程加载数据,比Dataloader里设置多个workers还要快】
  18. c语言百文百鸡问题答案,算法的举例(。。。
  19. MyCat分片规则(全局表,ER分片表,多对多关联,主键分片VS非主键分片),MyCat常用的分片规则(15中分片规则),自定义MyCat分片规则,其它术语
  20. java-php-python-ssm-蔚蓝在线学习平台2021计算机毕业设计

热门文章

  1. 基于curses库C++设计一款能进行海贼对战RPG文字游戏
  2. 语音备忘录怎么添加录音
  3. 遗传算法的运用(Python版)
  4. 32位古董级CPU-N270群晖系统安装手册
  5. register_chrdev_region()和registe_chrdev()
  6. 用手机怎么查看网页的源代码0
  7. 记录在苹果mac os系统上使用51单片机仿真软件Proteus
  8. 大学生影视主题网页制作 HTML+CSS+JavaScript (你好,李焕英 5页)
  9. echarts——map
  10. mysql 数据库是utf8 用cms gbk 可以吗_帝国cms编码GBK转换成UTF-8版教程方法