- 1、本文档共775页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
将文件存储在哪里? 外存 内存容量小,容易健忘,掉电即失 外存容量大、断电后数据不丢失,可重复使用,永久保存,不健忘 磁盘(Magnetic disks) 磁盘表面涂有磁性物质 磁性单元的N-S极的两种指向表示0-1 光盘(CD、DVD) 光盘表面有一层特殊介质 介质的高低不平的交替表示0-1 U盘(Flash Memory) 闪存,可用电擦除的ROM 一种电化学存储介质,电流的通断表示0-1 文件的分类 1. 按文件的逻辑结构 记录文件 由具有一定结构的记录组成(定长和不定长) 流式文件 由一个个字符(字节)数据顺序组成 数据流,字节流 C语言中的流(Stream) 通过一个流(通常和键盘相关)获得全部的输入 通过另一个流(通常和屏幕相关)写出全部的输出 较大规模的程序 可能需要额外的流 如磁盘文件、网络端口、打印机等 自来水厂 任意输入的源 任意输出的目的地 C语言中的标准流 stdio.h提供了三种标准流 是备用的,不能声明、打开和关闭 C语言中的标准流 scanf(), getchar(), gets()等通过stdin获得输入 printf(), putchar(), puts()等用stdout进行输出 stdout和stderr在默认情况下都指向屏幕,有何区别呢? 输出到stdout的内容先保存到缓冲区 而输出到stderr的内容则直接输出到屏幕 输入/输出重定向 某些操作系统允许重定向标准输入与输出 DOS和UNIX允许程序从文件获得输入或向文件写数据 这种重定向,程序本身是感觉不到的 输入重定向(Input Redirection) D:\demo infile.txt 从终端(键盘)输入数据改成从文件中读入数据 输出重定向(Output Redirection) D:\demo outfile.txt 从终端(显示器)输出数据改成向文件中写数据 文件的分类 文本文件(Text file) 二进制文件(Binary file) 可执行的C程序 二进制文件 2. 按数据的组织形式 C程序的源代码 文本文件 文本文件和二进制文件有什么区别呢? 文件的分类 文本文件 用字节表示字符的字符序列,存储每个字符的ASCII码 如整数123在文本文件中占3个字节,分别存放这3个字符的ASCII码 若存1234呢? 二进制文件 如短整型数123,在内存占2个字节,在二进制文件中也占2个字节 节省空间 13.1二进制文件和文本文件 二进制文件 字节不一定表示字符,没有字符变换,读写速度快 按照数据在内存中的存储形式(二进制)存储到文件 数据按照存入的类型读出,才能恢复其本来面貌 先按int类型读,为0x0064,是整数100 而按float读,将读出0对应的float值为1.4012985e-43,近似为0,面目全非 13.1二进制文件和文本文件 二进制文件 字节不一定表示字符,没有字符变换,读写速度快 按照数据在内存中的存储形式(二进制)存储到文件 缺点 不易阅读,妨碍调试过程 可移植性差,因不同类型的计算机存储数据的方式不同 存储int型2字节,4字节?先存高位字节,低位字节? 13.1二进制文件和文本文件 数据不仅要按照存入的类型读出,还要按存入的格式读出,才能恢复其本来面貌 公开的标准文件格式 如bmp、tif、gif、jpg和mp3等类型的文件,有大量软件能生成和使用这些类型的文件 不公开或加密的文件格式 如Microsoft Word的doc格式就不公开,所以至今没有Word以外的其他软件能完美地读出doc文件 一个C文件就是一种字节序列,无论何种形式 为什么一定要区分文本文件和二进制文件呢? 文本文件——按行划分 所以必须用特殊的字符标记行的结尾 某些OS还可能用特殊的字符标记文件的末尾 例如,DOS将Ctrl+Z设定为文件的结束符 二进制文件——不是按行划分的 可合法地包含任何字符,故不可能留出文件结束符 13.1二进制文件和文本文件 文件与流的关系 程序通过文件打开操作把流与设备联系起来,文件打开后,可在程序和文件之间交换数据 在程序运行时,由程序在磁盘上建立一个文件 文件打开后,通过写操作将数据存入该文件 由程序打开磁盘上的某个已有文件,通过读操作将文件中的数据读入内存供程序使用 程序通过文件关闭操作断开流与文件的联系 文件指针(File Pointer) FILE *fp ; 定义了FILE型指针变量,标识一个特定的磁盘文件 与文件相关联的每个流都有一个FILE类型的控制结构,定义有关文件操作的信息,用户绝对不应修改 C程序中流的打开和关闭是通过文件指针实现的 文件指针的类型为FILE * 文件指针(File Poi
您可能关注的文档
- 人教小学数学一年级上册第六单元测试卷及答案(二).pdf
- 人教小学数学一年级上册第六单元测试卷及答案(一).pdf
- 人教小学数学一年级上册第七单元测试卷及答案(二).pdf
- 人教小学数学一年级上册第三单元测试卷及答案(二).pdf
- 人教小学数学一年级上册第三单元测试卷及答案(一).pdf
- 人教小学数学一年级上册第五单元测试卷及答案(二).pdf
- 人教小学数学一年级上册第一单元测试卷及答案(二).pdf
- 《材料现代分析与测试技术》课程课件.ppt
- 《采煤概论》课程课件.ppt
- 《机电系统检测与控制》课程课件.ppt
- DB44_T 2611-2025 城市排水管网有毒有害气体监测与风险分级管理技术标准.pdf
- DB44_T 2612-2025 竞赛类科普活动策划与实施服务规范.pdf
- DB43_T 2947-2024 烟草种子质量控制规程.pdf
- DB37_T 4836-2025 煤矿风量实时监测技术要求.pdf
- 叉车防撞系统,全球前22强生产商排名及市场份额(by QYResearch).docx
- 超滤膜,全球前18强生产商排名及市场份额(by QYResearch).docx
- DB62T 4172-2020 玉米品种 酒623规范.pdf
- DB62T 4160-2020 在用真空绝热深冷压力容器综合性能在线检测方法.pdf
- DB62T 4164-2020 辣椒品种 酒椒1号.pdf
- DB62T 4133-2020 公路隧道地质超前预报机械能无损探测技术规程.pdf
最近下载
- 某化工厂现场应急处置方案(58个).pdf VIP
- MBR运行调试及维护.doc VIP
- 新目标(第二版)视听说B3U7 测试试卷答案.pdf VIP
- 论工厂设备详细搬迁方案.doc VIP
- 2025年公需课《人工智能赋能制造业高质量发展》试题及答案.doc VIP
- DB5307T59-2024丽江市城市暴雨强度公式.pdf VIP
- aqt3049—2013危险与可操作性分析hazop分析应用导则.doc VIP
- 物流运输企业成本结构分析(详细).docx VIP
- 心力衰竭患者利尿剂抵抗诊断及管理中国专家共识2024解读.pptx
- 课题申报书:人工智能赋能高职院校学生就业能力提升的路径研究.docx VIP
文档评论(0)