当前位置:文档之家› C语言程序设计项目11文件

C语言程序设计项目11文件

它表示要打开名字为al的文件,使用文件方式为“读入”(r代表read, 即读入),fopen函数会指向al文件的指针并赋给fp,这样fp就和文件al 相联系了,或者说,fp指向al文件。
任务11.2 文件的打开与关闭
11.2.2 文件的关闭(fclose函数) 在使用完一个文件后应该关闭它,以防止它再被误用,“关闭”就
任务11.3 文件的读写操作
(2)文件的打开 当程序员希望用低层接口读、写一个已存在的文件时,需用open打 开指定的文件,如果成功,则返回非负的整型文件描述字,否则返回- 1,原型为: int open(char *name, int flag, int perms) 参数flag用来说明文件打开方式。 O_RDONLY 所打开的文件只能进行读操作。 O_WRONLY 所打开的文件只能进行写操作。 O_WDWR 所打开的文件可读、可写操作。 参数perms通常都为0。
(输出
一个字符串)
任务11.3 文件的读写操作
11.3.2 输入输出的低层接口 计算机系统中各种资源均由OS统一管理,若要使用这些资源,必须
向OS发出请求,然后由OS响应这些请求,为此,OS必须提供一些接口, 使外层软件和用户程序能通过这些接口方便地使用OS提供的各种功能, 称为系统调用。
1.文件的创建、打开、关闭和删除 (1)文件的创建 当程序员希望创建一个新文件或重写一个老文件时,可使用低层接 口creat,其原型如下: int creat(char *name, int perms) 其中参数name是用户要建立的新文件名(包括路径名在内), perms是用户指定的新文件存取权限,不同的OS对它的解释不同。
(2)fgetc函数 从指定的文件读入一个字符,该文件必须是以读或读写方式打开的。 fgetc函数的调用形式为: ch=fgetc(fp): fp为文件型指针变量,ch为字符变量。fgetc函数带回一个字符,赋 给ch。如果在执行fgetc函数读字符时遇到文件结束符,还是返回一个文 件结束标志EOF(-1)。 (3)fputc和fgetc函数适用举例 示例11.1 从键盘输入一个字符,逐个把它们送到磁盘上去,直到输 入一个“#”为止。
exit(0);}
运行情况如下;ch=gethar( );filel.c
(输入磁盘
while(ch!=‘#’)
文件名)
{ fputc(ch.fp);putchar(ch);
computer and c# (输入
ch=getchar();}
一个字符串)
fclose(fp);}
computer and
任务11.3 文件的读写操作
#include <stdio.h>
Main( )
{ FILE*fp;
char ch,filename〖10};
scanf(“%5”,filename);
if((fp=fopen(filename,“w”))==NULL)
{ printf(“cannot open file\n”);
是使文件指针变量不指向该文件,也就是文件指针变量与文件“脱钩”, 此后不能再通过该指针对原来与其相联系的文件进行读写操作。除非再 次打开,使该指针变量重新指向该文件。
用fclose函数关闭文件。fclose函数调用的一般形式为: fclose(文件指针): 例如: fclose(fp): 前面我们曾把打开文件(用fopen函数)时所带回的指针赋给了fp,令通 过fp把该文件关闭。即fp不再指向该文件。
1
项目11 文件
➢ 项目导读 ➢ 项目目标 ➢ 项目任务
任务11.2 文件的打开与关闭
11.2.1文件的打开(fopen函数) ANSIC规定了标准输入输出函数库,用fopen()函数来实现打开文
件。fopen函数的调用方式通常为: FILE *fp; fp=fopen(文件名,使用文件方式); 例如: fp=fopen(“al”,“r” );
符变量。fp是文件指针变量。fputc(ch.fp)函数的作用是将字符(ch的 值)输出到fp所指向的文件中去。Fputc还是也带回一个值。如果输出成 功则返回值就是输出的字符,如果输出失败,则返回一个EOF(-1)。 EOF是在stdio.h文件中定义的符号常量,值为1。
任务11.3 文件的读写操作
任务11.3 文件的读写操作
12.3.1 文件的读写 文件打开之后,就可以对它进行读写了。常用的读写函数如下所述。 1.fputc函数和fgetc函数(putc函数getc函数)
(1)fputc函数 把一个字符写到磁盘文件上去。其一般调用形式为: fputc(ch.fp): 其中ch是要输出的字符,它可以是一个字符常量,也可以是一个字
任务11.3 文件的读写操作
(3)文件的关闭 一个程序能够打开的文件数目是受限制的。在UNIX和DOS中通常
为20,如果打开的文件已不再使用,则用close关闭。 int close(int fd) fd为要关闭的文件描述字,返回0表成功。-1关闭失败。
(4)删除文件 当某文件失去存在价值时,可用unlink函数删除它。 int unlink(char * filename) filename为要删除的文件名,删除成功,返回0,出错返回-1。 2.文件的读、写 函数read和write,读/写由open或creat打开或创建的文件。 int read(int fd, char *buf, int n); int write(int fd, char *buf, int n); fd是文件描述字,buf是用户程序的读/写缓冲区的起始地址,n是 传递的字节数,返回0表读/写成功,-1表读/写失败。
相关主题