理论教育 C语言程序设计:使用fgets和fputs函数快速读写

C语言程序设计:使用fgets和fputs函数快速读写

时间:2023-11-02 理论教育 版权反馈
【摘要】:1.读取字符串函数fgets函数fgets的使用格式如下:函数fgets的功能是从fp所指向的文件的当前位置开始读取n-1个字符,然后在所有字符的后面加一个字符串结束标志'\0',将这个字符串存于pstr为首地址的内存地址中。

C语言程序设计:使用fgets和fputs函数快速读写

1.读取字符串函数fgets

函数fgets的使用格式如下:

函数fgets的功能是从fp所指向的文件的当前位置开始读取n-1个字符,然后在所有字符的后面加一个字符串结束标志'\0',将这个字符串存于pstr为首地址的内存地址中。

在上面格式中,fp是文件类型指针;pstr是存放字符串的内存首地址,pstr可以是数组名或指针变量名。整型变量n限定了读取的字符个数为n-1。

在读完n-1个字符之前,如果遇到换行符或文件结束(EOF),则读取结束。所以,可能存在读取的字符数不足n-1个。

正常情况下,函数返回值是存放字符串的内存首地址(pstr);如果一个字符也没有读入或有错误发生,则返回NULL。

例如:

表示从fp所指向的文件中的当前位置开始读取20个字符,在20个字符的后面加一个字符串结束标志'\0',存入数组name。

2.写入字符串函数fputs

函数fputs的使用格式如下:(www.daowen.com)

fputs函数的功能是将字符串写入文件类型指针所指向的文件的当前位置,不包括字符串结束标志'\0'。

在上面格式中,fp是文件类型指针;pstr代表字符串,可以是字符串常量、字符串数组名或指向字符串的指针变量名。

例如:

表示将字符串“We study programming.”写入fp指向的文件(不包括'\0')。

又如:

表示将存放在数组course中(或指针course指向)的字符串写入fp所指向的文件(不包括'\0')。

例10.8 从键盘输入50个字符串,每个字符串最多8个字符,若不足8个,就用符号*补齐。例如,某个字符串是“comput”,则补2个*,输入“comput**”,然后按回车键。请将这50个字符串写入d:\str.txt文件中。写入50个字符串之后,再写入字符串“FileEnd”。最后从键盘为变量k赋值,k值为字符串的序号(0~49),请读取k值对应的字符串并显示在屏幕上。

【分析】可以定义字符型数组word[50][9]存放50个字符串,使用循环为数组word赋值,使用循环和函数fputs将50个字符串写入d:\str.txt文件。使用函数fgets读出k值对应的字符串。

程序代码如下:

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

我要反馈