unix环境高级编程-5.7-每行一次I/O

下面两个函数提供每次输入一行的功能

 

#include<stdio.h>

char *fgets(char * restrict buf,int n,FILE* restrict fp);

char* gets(char* buf);

 

两个返回值:若成功返回buf,若已达到文件结尾或出错则返回NULL;

char * fgets (char *s, int count, FILE *stream) [Function]
The fgets function reads characters from the stream stream up to and including a
newline character and stores them in the string s, adding a null character to mark
the end of the string. You must supply count characters worth of space in s, but the
number of characters read is at most count

这两个函数都指定了缓冲区的地址。读入的行将送入其中。gets从标准输入读,而fgets则从指定的流读。

而对于fgets,必须指定缓冲区的长度n,此函数一直读到下一个换行符为止。但不超过n-1个字符。

 

你可能感兴趣的:(unix环境高级编程-5.7-每行一次I/O)