高级语言程序设计知识点八

高级语言程序设计知识点八,第1张

8.1 C文件概述

1.文件引用规则

为使计算机程序能处理大量的数据信息,常将数据存储在计算机外部存储介质中,如磁带、磁盘等。计算机 *** 作系统将存储在外部存储介质中衫脊的数据以数据流的形式来组织。每个独立的数据流称作文件,每个文件有一个名字。为便于管理文件, *** 作系统维持一个呈层次状的目录结构,每个文件都被登录在某一目录下。习惯也将从键盘输入的数据流和向显示屏或打印机输出的数据流称作文件。引用文件可由以下几部分组成:

盘符:路径\文件名.扩展名

其中盘符表示文件所在存储块,系统将外部存储介质分成多个存储块,并搜睁用不同的盘符标识这些块。路径是文件所在目录层次,文件名和扩展名通常是由字母开头、字母和数字符组成。扩展名可以多至3个字符,通常用来表示文件的属性。因 *** 作系统保留着当前盘和当前路径,若要引用当前盘或当前路径下的文件,盘符和路径可以省略。

2.文件的打开和关闭

由于文件存放在磁盘上,程序要处理文件上的数据,必须先将文件中的数据读人到内存;反之,程序要将产生的数据永久保存,就应将数据写到文件中。文件受 *** 作系统管理,程序要使用文件,就要请求 *** 作系统,让程序与某文件之间建立某种联系,习惯称程序与文件建立联系的过程为文件打开;反之,撤消程序与文件联系的过程为文件关闭。所以,程序要使用文件,先要打开文件;程序使用文件结束后,应及时关闭文件。

3.文件缓冲技术

在现代计算机系统中,程序读文件中的数据或写数据到文件,都在 *** 作系统控制下完成。若程序要从文件读人一个数据, *** 作系统会一次性地读入一大块数据暂存于内存中,供程序以

后再读入时使用。程序向文件写数据时,也不是立即将数据写到文件中,而是暂时存于某个内存块中,待内存块写满,或程序明确告知写文件结束后,再将数据写到文件中。这种文件数据读写技术称为缓冲。文件读写采用缓冲技术的系统称为缓冲文件系统。在缓冲文件系统中,暂存输入输出数据的内存块称为文件缓冲区。不采用缓冲技术, *** 作系统直接按程序要求完成输入输出的系统称为非缓冲系统。

*** 作系统或漏渗为了控制和完成文件读写 *** 作,为每个正与程序相联系的文件设有一个控制块,在控制块中记录文件的名称、文件的属性、文件当前读写位置、文件缓冲区开始地址、文件当前

读写位置所对应缓冲区的位置等等。文件缓冲区和文件控制块都由系统分配和受系统控制。

4.二进制文件和文本文件

文件按其数据信息的存放格式分类,文件可分二进制文件和文本文件两种。二进制文件中的数据是按二进制方式存放,即以数据在计算机内存的存放格式将数据存储在文件中。将数据转换成字符列,每个字符又以字符的代码(例如,ASCII代码)存储的文件称为文本文件。一般来说,二进制文件比文本文件更紧凑,并在数据传输时不必进行格式转换,常用于计算机与计算机之间、计算机与外部设备之间传输数据用。由于文本文件以字符的代码存储,输出内容能让人直接阅读,常用于人与计算机之间通信时使用。

5.顺序文件和随机文件

文件按读写方式分,可以把文件分为顺序文件和随机文件。顺序文件要求文件读写从文件头开始,读或写 *** 作顺序进行。若临时要读取文件中间的某个数据,必须从头开始读,直至读人要读的数据;若在文件某位置要写入新的数据,也必须从文件的第一个数据开始顺序读取和复写,并在要改写的数据写入后,还要继续读取和复写其后的全部数据。随机文件允许随机地读取或改写文件任一位置上的数据。

C语言本身未提供有关文件 *** 作的输入输出语句,但对文件的打开、关闭和读写 *** 作都可用系统提供的库函数来实现。程序可用它们对文件作各种复杂的处理。

6.设备文件

系统将常规设备上的输入输出数据流称为标准文件,程序运行前,系统自动打开这些标准文件。它们是标准输入文件、标准输出文件、标准出错输出文件和标准打印输出文件。系统自动定义了这些标准文件的文件指针,它们依次是stdin、stdout、stderr和stdprn,供程序直接使用。

程序除能直接使用前面各章都使用的不带文件指针的标准输入输出库函数外,也可对它们使用下面介绍的带文件指针的一般形式的输入输出库函数。如stdin,就是指从终端输入数据;stdout,就是向终端输出数据。

7.文件类型和文件类型指针变量

为了正确地完成文件读写, *** 作系统为每个正被程序使用的文件在内存中开辟一个存储区,用于存放有关对文件进行 *** 作所需的控制信息(简称控制块)。如文件名、文件读写状态。文件缓冲区大小和位置、当前读写位置等。控制块是一个结构变量,其类型由系统预定义,取名为FILE,习惯称文件类型。程序通过指向该控制块的指针调用系统提供的文件处理库函数。

程序在使用文件前,先调用文件打开函数。打开函数为将要使用的文件指定一个FILE类型的结构变量,并返回该结构的指针。系统通过指向该结构的指针来引用结构中的文件控制信息,实现正确读写对应的文件。

程序要使用文件,就要定义FILE类型的指针变量(称文件指针变量)。例如,

FILE * fp

定义如是一个文件指针变量,它能指向前述类型为FILE的文件控制块结构变量。

8.文件打开库函数 fopen()

在读写文件之前,先得打开文件。打开文件可使用库函数fopen() 。调用函数fopen() 的一般形式为

fopen(文件名,使用方式)

其中文件名(可能还包括盘符和目录路径) 为字符串表达式。使用方式也是一个字符串,用来指明文件的读写方式。函数fopen() 将返回文件控制块结构变量指针,程序应将调用函数fopen()

返回的指针值赋给某个文件指针变量来保存。如语句

fp = fopen("\\usr4\\smp.dat","r");

以文件读方式打开根目录下的usr4子目录中的smp.dat文件。

调用函数fopen()时,可能会因某种原因不能打开文件。如读方式下打开一个不存在的文件;在写方式下,外部存储介质已无剩余的自由空间,或外设故障,或超过系统能同时打开的文

件数;等等。文件不能打开时,函数fopen()将返回一个空指针值NULL。程序应考虑到文件不能正常打开的极端情况,所以常用以下形式的C代码描述打开一个文件的要求:

if((fp =fopen( filename,"r"))==NULL) {

printf("Can not open %s file.\n", filename);

exit(0); /* 结束程序的执行,回到环境或 *** 作系统 */

}

以上代码以读方式打开一个文件,其中filename是某文件名字符串表达式。上述代码在调用函数fopen()后立即检查打开是否成功,如果打开不成功,就在终端上输出该文件不能打开字样,调用exit函数。exit函数是系统提供的函数,该函数的执行将释放程序的全部资源,终止程序的执行。调用该函数时需指定一个整数,该整数将作为程序终止时给系统的一个返回值。若程序使用该函数,应在程序的头写上包含stdio.h头文件的预处理命令。

自考本科计算机专业考试科目主要有计算机网络原理、计算机 *** 作系统、软件工程、 *** 作系统、裤孝计算机应用与技术zd、中国近代史纲要、马克思主义基本原理概论、高等空缓数学、英语、电子技术基础、计算机组成原理、C++语言程序设计、数据库及其应用、线性代数等等胡亏稿。

问题一:什么叫应用程序(软件)什么叫系统软件?谢谢! 这两个问题百度百科均有完整的答案:

系统软件

是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的 *** ,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需简斗要顾及到底层每个野虚硬件是如何工作的。

应用程序

是指为了完成某项或某几项特定任务而被开发运行于 *** 作系统之上的计算机程序。应用程序与应用软件的概念不同,但常常因为概念相似而被混淆。软件指程序与其相关文档或其他从属物的 *** 。一般的我们视程储为软件的一个组成部分。

详情百度百科搜索 系统软件和应用程序即可

问题二:系统程序指的是什么 系统程序 其实可以有三个典型 数据库系统 高级语言程序 *** 作系统 LZ这里的系统是指 *** 作系统吧 *** 作系统按计算机系结构的分类 是直接面向机器 也就是我们说的裸机(只为用户提供了基本的基本指令系统)那么 *** 作系统是在硬件指令上的再次扩充 向数据库系统 高级语言程序 提供更完善的指令系统(基于这一点它提供了API和DLL供高层系统调用)此外 *** 作系统还对硬件资源进行管理和用户作业的调度(基于这一点就有硬件的驱动程序和 *** 作系统用于调度管理的内核程序)另外 *** 作系统还要提供用户界面(那么就要提供命令或者图形界面的程序)另外还有对文件的管理(管理文件的程序) 还要提供系统安全等(安全相关程序) 等等其他的好像就不是核心了 不足之处还望包涵

问题三:计算机软件系统是什么系统还是什么软件 现在备份和还原系统一般都采用一键还原、一键还原精灵、一键ghost等软件。这些拦脊磨软件都是以ghost程序为核心的系统备份和还原工具。虽然名称略有不同,但 *** 作方法基本相同。这些软件的一个最大特点就是傻瓜式 *** 作,不会备份系统和还原系统的人一样可以完成这些工作。运行这些软件后,用户要做的工作就是确定是备份系统还是还原系统,只要你按一下确定按钮,其他事情一切由电脑自动完成,可以说是一键搞定。而且通过这些软件备份的系统文件会保存到硬盘的一个隐含文件夹中,不会被误删除。使用建议你使用一键还原软件来备份或还原系统。

问题四:什么系统是什么不带的。意思就是一安装完系统就不自动安装系统里面自带的软件。 纯净版系统 除了系统不带其它软件,连OFFICE都没有

问题五:刚买的电脑中系统自带的软件有哪些? 常见灌木主要为多种胡枝子、绣线菊、忍冬、荚o、榛和黄栌等。草本主要是多种苔丁、委陵菜、蒿类及野牯草、白羊草、黄背草等亚热带禾草。

问题六:系统自带那个看图片的软件是什么啊 ACD,也叫WINDOWS图片和传真查看器 。用Picasa也不错,在360里面就可以下载一个,可以轻松管理大量的图片,和省时间。

问题七:安卓系统里自带的tags是什么软件 安卓手机系统自带的软件,一般是手机的预装软件或者框架

如果想卸载这类软件的话,最好先备份手机一下,避免删错

最好是使用应用宝来帮助手机备份,这个软件功能比较好的

运行电脑的应用宝――点击连接手机――按照提示把手机设置――开发者选项打开――再打开它里面的USB提示,然后连接上数据线――成功连接后进入工具箱――资料备份就行了,还望采纳哦

问题八:一般电脑自带的看图软件是什么? 用网上下ghost装的系统一般都用ACDSee看图.

问题九:安卓手机自带系统能精简的程序是什么 这得看你的手机型号和系统版本,不同的机子和不同的型号能够删除的程序也不一样,你可以对照自己的手机型号,和系统在论坛上找到精简列表。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12454638.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存