122文件的打开与关闭 对文件进行操作之前,必须先打开该文件;使用结 束后,应立即关闭,以免数据丢失。 C语言规定了标准输入输出函数库,用 fopen函数 打开一个文件,用 fclose函数关闭一个文件。 1221文件的打开— fopen(函数 1.用法:FIE* fopen("文件名","操作方式"); 2.功能:返回一个指向指定文件的指针 3.函数原型: stdio h。 注:对文件操作的库函数,函数原型均在头文件 stdio. hl中。后续函数不再赘述
12.2 文件的打开与关闭 对文件进行操作之前,必须先打开该文件;使用结 束后,应立即关闭,以免数据丢失。 C语言规定了标准输入输出函数库,用fopen()函数 打开一个文件,用fclose()函数关闭一个文件。 12.2.1 文件的打开──fopen()函数 1.用法: FILE *fopen("文件名" , "操作方式"); 2.功能:返回一个指向指定文件的指针。 3.函数原型:stdio.h 。 注:对文件操作的库函数,函数原型均在头文件 stdio.h中。后续函数不再赘述
(1)“文件名”是指要打开(或创建)的文件名 如果使用字符数组(或字符指针),则不使用双引号 (2)“操作方式”如表12-1所示 例如,FILE*fp fp=fopen(data.99",r) 3.说明 1)如果不能实现打开指定文件的操作,则 fopen( 函数返回一个空指针NULL(其值在头文件 stdio. h中被定 义为0)。 为增强程序的可靠性,常用下面的方法打开一个文件: if(fp= =fopen("文件名","操作方式")=NULL) i printf("can not open this filein"); exit(O)
(1)“文件名”是指要打开(或创建)的文件名。 如果使用字符数组(或字符指针),则不使用双引号。 (2)“操作方式”如表12-1所示。 例如,FILE *fp; fp=fopen("data.99" ,"r"); 3.说明 (1)如果不能实现打开指定文件的操作,则fopen() 函数返回一个空指针NULL (其值在头文件stdio.h中被定 义为0)。 为增强程序的可靠性,常用下面的方法打开一个文件: if((fp=fopen("文件名","操作方式"))==NULL) { printf("can not open this file\n"); exit(0); }
●关于ex0函数 1)用法: void exit(程序状态值) 2)功能:关闭已打开的所有文件,结束程序运行, 返回操作系统,并将“程序状态值”返回给操作系统。 当“程序状态值”为0时,表示程序正常退出;非0值 时,表示程序出错退出。 (2)“r(b)+与“a(b)+”的区别:使用前者打开 文件时,读写位置指针指向文件头;使用后者时,读写 指针指向文件尾 (3)使用文本文件向计算机系统输入数据时,系统 自动将回车换行符转换成一个换行符;在输出时,将换 行符转换成回车和换行两个字符
●关于exit()函数 1)用法:void exit([程序状态值]); 2)功能:关闭已打开的所有文件,结束程序运行, 返回操作系统,并将“程序状态值”返回给操作系统。 当“程序状态值”为0时,表示程序正常退出;非0值 时,表示程序出错退出。 (2)“ r(b)+”与“ a(b)+”的区别:使用前者打开 文件时,读写位置指针指向文件头;使用后者时,读写 指针指向文件尾。 (3)使用文本文件向计算机系统输入数据时,系统 自动将回车换行符转换成一个换行符;在输出时,将换 行符转换成回车和换行两个字符
使用二进制文件时,内存中的数据形式与数据文 件中的形式完全一样,就不再进行转换 (4)有些C编译系统,可能并不完全提供上述对 文件的操作方式,或采用的表示符号不同,请注意所 使用系统的规定 (5)在程序开始运行时,系统自动打开三个标准 文件,并分别定义了文件指针: 1)标准输入文件— stdin:指向终端输入(一般 为键盘)。如果程序中指定要从 stdin所指的文件输入 数据,就是从终端键盘上输入数据
使用二进制文件时,内存中的数据形式与数据文 件中的形式完全一样,就不再进行转换。 (4)有些C编译系统,可能并不完全提供上述对 文件的操作方式,或采用的表示符号不同,请注意所 使用系统的规定。 (5)在程序开始运行时,系统自动打开三个标准 文件,并分别定义了文件指针: 1)标准输入文件——stdin:指向终端输入(一般 为键盘)。如果程序中指定要从stdin所指的文件输入 数据,就是从终端键盘上输入数据
2)标准输出文件— stdout:指向终端输出(一般为 显示器)。 3)标准错误文件— stderr:指向终端标准错误输出 般为显示器) 1222文件的关闭— colse函数 1.用法: int fclose(FIE*件指针); 2.功能:关闭“文件指针”所指向的文件。如果正 常关闭了文件,则函数返回值为0;否则,返回值为非0。 例如, fclose((fp):/*关闭印所指向的文件* REturn
2)标准输出文件——stdout:指向终端输出(一般为 显示器)。 3)标准错误文件——stderr:指向终端标准错误输出 (一般为显示器)。 12.2.2 文件的关闭──fcolse()函数 1.用法: int fclose(FILE *文件指针); 2.功能:关闭“文件指针”所指向的文件。如果正 常关闭了文件,则函数返回值为0;否则,返回值为非0。 例如,fclose(fp);/*关闭fp所指向的文件*/ [Return]