中易网

C语言怎样一行一行读文件?

答案:6  悬赏:30  
解决时间 2021-04-28 10:51
  • 提问者网友:温柔又任性
  • 2021-04-27 18:46
C语言怎样一行一行读文件?
最佳答案
  • 二级知识专家网友:星痕之殇
  • 2021-04-27 19:57
C语言可以通过fgets函数一次读一行数据。
 
fgets函数原型如下:
    char *fgets(char *buf, int bufsize, FILE *stream);
参数 说明
    *buf: 字符型指针,指向用来存储所得数据的地址。
    bufsize: 整型数据,指明存储数据的大小。
    *stream: 文件结构体指针,将要读取的文件流。
 
fgets函数注意细节如下:
1. 从文件结构体指针stream中读取数据,每次读取一行。
2. 读取的数据保存在buf指向的字符数组中,每次最多读取bufsize-1个字符(第bufsize个字符赋'\0'),如果文件中的该行,不足bufsize个字符,则读完该行就结束。
3. 如若该行(包括最后一个换行符)的字符数超过bufsize-1,则fgets只返回一个不完整的行,但是,缓冲区总是以NULL字符结尾,对fgets的下一次调用会继续读该行。
4. 函数成功将返回buf,失败或读到文件结尾返回NULL
全部回答
  • 1楼网友:颜值超标
  • 2021-04-28 00:43
没看明白你什么意思
  • 2楼网友:承载所有颓废
  • 2021-04-28 00:05
getline()函数
  • 3楼网友:转身后的回眸
  • 2021-04-27 22:55
if(fp=fopen(FileName,"r")) { while(!feof(fp)) { fscanf(fp,"%s\r\n",buf); memcpy(FileData[i].file_data,buf,sizeof(buf)); i++; } }
  • 4楼网友:糜废丧逼
  • 2021-04-27 21:31
可以用fgets函数,如果你用流访问文件,也可以用getline函数。
  • 5楼网友:甜野猫
  • 2021-04-27 20:48
文件有三行有两种情况。一种是显示是在屏幕上显示三行,其实还是在一行,另一种是以换行符分割行。对第一种情况,遍历统计字符个数,计算出第三行起始地址,对第二种遍历以第二个换行符下一个地址作为第三行起始地址
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息