欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C 考试 "档案部分"(部分)

最编程 2024-05-07 22:30:48
...

「这是我参与11月更文挑战的第9天,活动详情查看:2021最后一次更文挑战」。

feof(fp)函数用来检测文件位置指针是否已指向文件的末尾,若已指向末尾,则函数值为非零值,否则函数值为0。

 

本题考查点是fopen函数中文件使用方式的指定。

    文件使用方式"r",表示"只读"方式打开一个字符文件。

    文件使用方式"r+",表示"读写"方式打开一个字符文件。

    文件使用方式"rb",表示以"只读"方式打开一个二进制文件。

    文件使用方式"w",表示以"只写"方式打开一个字符文件。

 

    C语言把文件看作是一个字符(字节)的序列,根据数据组织形式可分为ASCII文件(又称文本文件)和二进制文件,即一个C文件可以看成是一个字节流或二进制流,对于流式文件,可以进行顺序读写,也可以进行随机读写,关键在于控制文件的位置指针,由于文本文件要发生字符转换,计算位置时往往会发生混乱,访问速度受到影响,所以随机读写方式不使用于文本文件。

 

 FILE是由系统定义的一个结构体类型,并用该类型来定义若干个FILE类型的变量,以便存放若干个文件。所以用FILE定义的变量必须是数组或指针,所以选项C中的"FILE  fp;"改为"FILE  *fp;"就对了。

 

C语言中,有两种对文件的存取方式:顺序存取和直接存取,所以选项A错误;在对文件进行读、写操作前,先要使用库函数fopen"打开"文件来实现程序中要读、写的文件与实际数据文件间的联系。在进行打开文件操作时可以指定其打开方式,如果使用"r+"方式则在写新数据时,只覆盖新数据所占的空间,其后的老数据并不丢失,所以选项B错误;在对文件进行操作后关闭文件是为了防止文件缓冲区中的剩余数据的丢失。

 

C语言把文件看作是一个字符的序列,即由一个一个字符的数据顺序组成。根据数据组织形式,可分为ASCII文件和二进制文件。ASCII文件又称文本文件。所以选项C的描述正确。

 

 

    fp=fopen("file","w");表示用"w"方式打开文件,只能用于向该文件写数据(即输出文件),而不能用来向计算机输入。如果原来不存在该文件,则在打开时新建立一个以指定的名字命名的文件。如果原来已存在该文件,则在打开时将该文件删除,然后重新建立一个新文件。

 

EOF作为文件结束的标志,但是文件必须是文本文件。EOF的值为-1。

 

 

    在C语言中fopen函数就可把程序中要读、写的文件与磁盘上实际的数据文件联系起来,其调用形式为:fopen(文件名,文件使用方式);若该函数调用成功,函数返回一个FILE类型的指针,赋给文件指针变量,从而与文件联系起来,当打开文件时出现错误,fopen函数将返回NULL。

 

对文件进行输出的库函数是fputC、fwrite、fprintf;

 

 

fread(buffer,size,count,fp);

 

buffer是数据块的指针,对fread来说,它就是内存块的首地址,输入的数据存入此内存块中。

 

fputc函数的调用形式:

    fputc(ch,fp)

    这里ch是待输出的某个字符,它可以是一个字符常量,也允许是一个字符变量,fp是文件指针。

 

 

 文件指针实际上是指向一个结构体类型的指针,定义说明文件指针的一般形式为:

FILE *指针变量标识符

这个结构体中包含有诸如:缓冲区的地址、在缓冲区中当前存取的字符的位置、对文件是"读"还是"写"、是否出错、是否已经遇到文件结束的标志等信息;fscanf函数只能从文本文件中按格式输入,输入的对象是磁盘上文本文件的数据。

推荐阅读