ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C++ fgets函数

2022-07-19 15:32:51  阅读:347  来源: 互联网

标签:函数 pFile C++ 字符串 str fgets NULL 读取


一、读字符串函数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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有