首页 理论教育 C语言程序设计:fgetc和fputc函数使用

C语言程序设计:fgetc和fputc函数使用

时间:2023-11-23 理论教育 版权反馈
【摘要】:在从一个文本文件中读入字符时,若读到了文件结束符,fgetc返回值为EOF。为了解决这一问题,C语言中提供了一个feof函数来判断文件是否结束。fputc函数的值就是输出到文件中的字符,若该输出不能正确执行,则其值为EOF。使用fputc和fgetc函数完成文件的复制功能。假设有一文件在d盘中,其名字为a.txt,其中的内容为hello word,现要将其复制到e盘,名字为b.txt。

C语言程序设计:fgetc和fputc函数使用

这是两个以字符(字节)为单位的读/写函数,每次可以从文件中读出或者向文件中写入一个字符。

1.fgetc函数

一般使用形式:

ch=fgetc(fp);

功能:从和文件指针fp关联的文件中输入一个字符到变量ch中。

在从一个文本文件中读入字符时,若读到了文件结束符,fgetc返回值为EOF(EOF是在stdio.h中定义的值为-1的常量)。EOF不是一个可以输出的字符,不能在显示器上输出。但这个方法对于二进制文件不适合,因为读入二进制文件中的一个字节,此字节中的数据有可能是-1。为了解决这一问题,C语言中提供了一个feof函数来判断文件是否结束。feof(fp)可以判断fp所指向的文件是否结束,若文件结束则返回1,否则返回0。feof函数不仅可以判断二进制文件是否结束,也可用于判断文本文件。

2.fputc函数

一般使用形式为:

fputc(ch,fp);

功能:将ch中的字符输出到文件指针fp所指向的文件中。其中ch可以是字符常量或字符变量。(www.xing528.com)

fputc函数的值就是输出到文件中的字符,若该输出不能正确执行,则其值为EOF。

【例10-1】使用fputc和fgetc函数完成文件的复制功能。

假设有一文件在d盘中,其名字为a.txt,其中的内容为hello word,现要将其复制到e盘,名字为b.txt。其复制过程如下:

(1)以读方式打开a.txt,以写方式打开b.txt;

(2)从a.txt中读入一个字符并将读入的字符输出到b.txt中;

(3)重复步骤(2)直至a.txt所有字符处理完(读到EOF)。

程序源代码如下:

程序运行结束后,可以在e盘中找到一个名字为b.txt的文件,打开该文件,其中内容也同样是“hello world”,这样就完成了文件的复制功能。

程序中判断文件结束也可以用feof函数,其用法如下:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈