Считать строку символов из файла
#include <stdio.h>char * input_line( FILE *fp,char *buf,int bufsize );extern int _input_line_max;
libc
The input_line() function gets a string of characters from the file designated by fp and stores them in the array pointed to by buf. The input_line() function stops reading characters when:
1
characters have been read. In addition, the input_line() function buffers the last _input_line_max lines internally. The _input_line_max variable is defined in <stdio.h>
. You can set it before calling input_line() for the first time; its default value is 20
. While the line is being read, the KEY_UP
and KEY_DOWN
keys can be used to move to the previous and next line respectively in a circular buffer of previously read lines. The newline character (\n) is replaced with the null character on input.
#include <stdlib.h>#include <stdio.h>#define SIZ 256int _input_line_max;int main( void ){FILE *fp;char *p,buf[SIZ];fp = stdin; /* Or any stream */_input_line_max = 25; /* set before 1st call */while ( (p = input_line( fp, buf, SIZ )) != NULL ){printf( "%s\n", buf );fflush( stdout );}return (EXIT_SUCCESS);}
ЗОСРВ «Нейтрино»
Предыдущий раздел: Описание API системной библиотеки