编程语言
首页 > 编程语言> > C++ fgets函数

C++ fgets函数

作者:互联网

一、读字符串函数fgets

函数原型:
char fgets ( char* str, int size, FILE* stream)*
*str: 字符型指针,用来存储所得数据的地址。字符数组。
size: 整型数据,要复制到str中的字符串的长度,包含终止NULL。
*stream:文件结构体指针,将要读取的文件流。
意义:从stream所指向的文件中读取size-1个字符送入字符串数组str中。

功能:从文件中读取字符串,每次只读取一行。

注意:
1. fgets每次最多只能读取n-1个字2.符,第n个为NULL。
2. 当遇到换行符或者EOF时,即使当前位置在n-1之前也读出结束。
3. 若函数返回成功,则返回 字符串数组str的首地址。

举例:
文件flie:
This is a text.
my file.
如果用fgets(str1,5,file);去读取,则执行:
str1=This,实际只读取5-1=4个字符。
如果用fgets(str2,20,flie);去读取,则执行:
str2=This is a text. 遇到换行符就停止读出。

代码:

 1 /* fgets example */
 2 #include <stdio.h>
 3 
 4 int main()
 5 {
 6    FILE * pFile;
 7    char mystring [100];
 8 
 9    pFile = fopen ("myfile.txt" , "r");
10    if (pFile == NULL) perror ("Error opening file");
11    else {
12      if ( fgets (mystring , 100 , pFile) != NULL )
13        puts (mystring);
14      fclose (pFile);
15    }
16    return 0;
17 }

 

标签:函数,pFile,C++,字符串,str,fgets,NULL,读取
来源: https://www.cnblogs.com/ybqjymy/p/16494207.html