9.1.1文件操作的C程序奥例 c void maino f FILE fp /*定义文件类型指针印* fp= fopen( user X“tb),/*以二进制只读方式打开文件 user X* 据言程设计 if(fp=NULL) i printf("cannot open this filen ) exit(O); fread(&stu, sizeof(userinfo),1,i);/*读出文件中的数据*/ printf( your username: %osn", stu username) printf( your password: %sIn", stu password) fclose(fp); /*关闭文件* 60 假如 userX中的数据是实例2所输入的信息,则输出结果为: your username: student 环 境 your password: 12345678 返回本节目录
void main() { FILE *fp; /*定义文件类型指针fp*/ fp=fopen(“user.x”,“rb”); /*以二进制只读方式打开文件user.x*/ if(fp==NULL) { printf("cannot open this file\n"); exit(0); } fread(&stu,sizeof(userinfo),1,fp); /*读出文件中的数据*/ printf("your username:%s\n",stu.username); printf("your password:%s\n",stu.password); fclose(fp); /*关闭文件*/ } 9.1.1 文件操作的C程序实例 《 C 语 言 程 序 设 计 》(Visual C++ .6 0 环 境 ) 返回本节目录 假如user.x中的数据是实例2所输入的信息,则输出结果为: your username:student your password:12345678
9。1.2C文件概述 rc语言把磁盘文件看作是字符(或字节)的序列,根据 数据的组织形式(存储信息的形式),文件可分为ASCIⅡ码 文件和二进制文件。ASCⅡ码文件又称为文本文件,该文件 是由一个个字符组成,每一个字节存放一个ASCⅡ码,代表 言一个字符。二进制文件是把内存中的数据按其在内存中的存 储形式原样放入磁盘存放。 说例如,现有一个整数134,如果按ASCⅡ码形式存入文件, 计要占4个字节,其存储形式如下: ASCⅡ码: 00110001001100100011001100110100 白 6+进制傲: 环 境 返回本节目录
9.1.2 C文件概述 《 C 语 言 程 序 设 计 》(Visual C++ .6 0 环 境 ) 返回本节目录 C语言把磁盘文件看作是字符(或字节)的序列,根据 数据的组织形式(存储信息的形式),文件可分为ASCⅡ码 文件和二进制文件。ASCⅡ码文件又称为文本文件,该文件 是由一个个字符组成,每一个字节存放一个ASCⅡ码,代表 一个字符。二进制文件是把内存中的数据按其在内存中的存 储形式原样放入磁盘存放。 例如,现有一个整数1234,如果按ASCⅡ码形式存入文件, 要占4个字节,其存储形式如下:
9。1.2C文件概述 「如果按二进制形式存入文件,则只占2个字节,其存储形式 |与内存中的存储形式相同,如下: 0000010011010010 程 序由以上举例不难看出用ASCⅡ码形式存入文件时一个字节 代表一个字符,因而便于对字符进行逐个处理,也便于输 出,但一般占存储空间较大,而且要花费二进制形式与 ASCⅡ码之间的转换时间。用二进制形式存入文件则可以 节省外存空间和转换时间,但一个字节并不对应一个字符, 所以如果在屏幕上显示经常显示的是乱码 环 境 返回本节目录
9.1.2 C文件概述 《 C 语 言 程 序 设 计 》(Visual C++ .6 0 环 境 ) 返回本节目录 如果按二进制形式存入文件,则只占2个字节,其存储形式 与内存中的存储形式相同,如下: 00000100 11010010 由以上举例不难看出用ASCⅡ码形式存入文件时一个字节 代表一个字符,因而便于对字符进行逐个处理,也便于输 出,但一般占存储空间较大,而且要花费二进制形式与 ASCⅡ码之间的转换时间。用二进制形式存入文件则可以 节省外存空间和转换时间,但一个字节并不对应一个字符, 所以如果在屏幕上显示经常显示的是乱码
9.13文件类型指针 C语言程序可以同时处理多个文件,为了对每一个文件 进行有效的管理,在打开一个文件时,系统会自动地在内存 中开辟一个区,用来存放文件的有关信息(如文件名、文件 合|状态等)。这些信息保存在一个结构体变量中,该结构体是 由系统定义的,取名为FE。FE定义在头文件sdh中。 对每一个要进行操作的文件,都需要定义一个指向FLE类型 说|结构体的指针变量该指针称为文件类型指针,文件类型指 计针的定义方法如下: FⅠLE*指针变量; 如:FILE*fp 9印是一个指向FLE类型结构体的指针变量。当印和某个文件 建立关联之后,通过印即可找到存放该文件信息的结构变量 然后按结构变量提供的信息找到该文件,实施对文件的操 作。 巡回本节目录
9.1.3 文件类型指针 《 C 语 言 程 序 设 计 》(Visual C++ .6 0 环 境 ) 返回本节目录 C语言程序可以同时处理多个文件,为了对每一个文件 进行有效的管理,在打开一个文件时,系统会自动地在内存 中开辟一个区,用来存放文件的有关信息(如文件名、文件 状态等)。这些信息保存在一个结构体变量中,该结构体是 由系统定义的,取名为FILE。FILE定义在头文件stdio.h中 。 对每一个要进行操作的文件,都需要定义一个指向FILE类型 结构体的指针变量,该指针称为文件类型指针,文件类型指 针的定义方法如下: FILE *指针变量; 如:FILE *fp; fp是一个指向FILE类型结构体的指针变量。当fp和某个文件 建立关联之后,通过fp 即可找到存放该文件信息的结构变量, 然后按结构变量提供的信息找到该文件, 实施对文件的操 作
92文件的打开与头闭 据言程设计 言9.2.1文件打开函数 opend 922文件关闭函数 fclose0 60
《 C 语 言 程 序 设 计 》(Visual C++ .6 0 环 境 ) 返回本章目录 9.2.2 文件关闭函数fclose() 9.2.1 文件打开函数fopen() 9.2 文件的打开与关闭