首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
第 1 页:8.1 C文件概述 |
第 4 页:8.2 文件处理程序结构和文件输入输出常用库函数 |
8.1 C文件概述
1.文件引用规则
为使计算机程序能处理大量的数据信息,常将数据存储在计算机外部存储介质中,如磁带、磁盘等。计算机操作系统将存储在外部存储介质中的数据以数据流的形式来组织。每个独立的数据流称作文件,每个文件有一个名字。为便于管理文件,操作系统维持一个呈层次状的目录结构,每个文件都被登录在某一目录下。习惯也将从键盘输入的数据流和向显示屏或打印机输出的数据流称作文件。引用文件可由以下几部分组成:
盘符:路径\文件名.扩展名
其中盘符表示文件所在存储块,系统将外部存储介质分成多个存储块,并用不同的盘符标识这些块。路径是文件所在目录层次,文件名和扩展名通常是由字母开头、字母和数字符组成。扩展名可以多至3个字符,通常用来表示文件的属性。因操作系统保留着当前盘和当前路径,若要引用当前盘或当前路径下的文件,盘符和路径可以省略。
2.文件的打开和关闭
由于文件存放在磁盘上,程序要处理文件上的数据,必须先将文件中的数据读人到内存;反之,程序要将产生的数据永久保存,就应将数据写到文件中。文件受操作系统管理,程序要使用文件,就要请求操作系统,让程序与某文件之间建立某种联系,习惯称程序与文件建立联系的过程为文件打开;反之,撤消程序与文件联系的过程为文件关闭。所以,程序要使用文件,先要打开文件;程序使用文件结束后,应及时关闭文件。
3.文件缓冲技术
在现代计算机系统中,程序读文件中的数据或写数据到文件,都在操作系统控制下完成。若程序要从文件读人一个数据,操作系统会一次性地读入一大块数据暂存于内存中,供程序已后再读入时使用。程序向文件写数据时,也不是立即将数据写到文件中,而是暂时存于某个内存块中,待内存块写满,或程序明确告知写文件结束后,再将数据写到文件中。这种文件数据读写技术称为缓冲。文件读写采用缓冲技术的系统称为缓冲文件系统。在缓冲文件系统中,暂存输入输出数据的内存块称为文件缓冲区。不采用缓冲技术,操作系统直接按程序要求完成输入输出的系统称为非缓冲系统。操作系统为了控制和完成文件读写操作,为每个正与程序相联系的文件设有一个控制块,在控制块中记录文件的名称、文件的属性、文件当前读写位置、文件缓冲区开始地址、文件当前读写位置所对应缓冲区的位置等等。文件缓冲区和文件控制块都由系统分配和受系统控制。
4.二进制文件和文本文件
文件按其数据信息的存放格式分类,文件可分二进制文件和文本文件两种。二进制文件中的数据是按二进制方式存放,即以数据在计算机内存的存放格式将数据存储在文件中。将数据转换成字符列,每个字符又以字符的代码(例如,ASCII代码)存储的文件称为文本文件。一般来说,二进制文件比文本文件更紧凑,并在数据传输时不必进行格式转换,常用于计算机与计算机之间、计算机与外部设备之间传输数据用。由于文本文件以字符的代码存储,输出内容能让人直接阅读,常用于人与计算机之间通信时使用。
5.顺序文件和随机文件
文件按读写方式分,可以把文件分为顺序文件和随机文件。顺序文件要求文件读写从文件头开始,读或写操作顺序进行。若临时要读取文件中间的某个数据,必须从头开始读,直至读人要读的数据;若在文件某位置要写入新的数据,也必须从文件的第一个数据开始顺序读取和复写,并在要改写的数据写入后,还要继续读取和复写其后的全部数据。随机文件允许随机地读取或改写文件任一位置上的数据。
C语言本身未提供有关文件操作的输入输出语句,但对文件的打开、关闭和读写操作都可用系统提供的库函数来实现。程序可用它们对文件作各种复杂的处理。
6.设备文件
系统将常规设备上的输入输出数据流称为标准文件,程序运行前,系统自动打开这些标准文件。它们是标准输入文件、标准输出文件、标准出错输出文件和标准打印输出文件。系统自动定义了这些标准文件的文件指针,它们依次是stdin、stdout、stderr和stdprn,供程序直接使用。
程序除能直接使用前面各章都使用的不带文件指针的标准输入输出库函数外,也可对它们使用下面介绍的带文件指针的一般形式的输入输出库函数。如stdin,就是指从终端输入数据;stdout,就是向终端输出数据。
相关推荐:推荐:2010年计算机软件水平考试必备完美攻略北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |