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. 遇到换行符就停止读出。

代码:

/* fgets example */
#include <stdio.h>

int main()
{
   FILE * pFile;
   char mystring [100];

   pFile = fopen ("myfile.txt" , "r");
   if (pFile == NULL) perror ("Error opening file");
   else {
     if ( fgets (mystring , 100 , pFile) != NULL )
       puts (mystring);
     fclose (pFile);
   }
   return 0;
}
  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值