Функция fgets () в C ++ считывает указанное максимальное количество символов из заданного файлового потока.
прототип fgets ()
char * fgets (char * str, int count, FILE * stream);
fgets()
Функция считывает максимум count-1
символов из заданного потока файлов и сохраняет их в массиве , на который указывает ул.
Анализ продолжается до тех пор, пока не будет достигнут конец файла или не будет найден символ новой строки ( n). Массив str также будет содержать символ новой строки, если он будет найден. Если ошибки не возникает, в конец строки str записывается нулевой символ.
Это определено в заголовочном файле.
Параметры fgets ()
- str: указатель на массив символов, в котором хранится содержимое файла.
- count: максимальное количество символов для записи.
- stream: файловый поток для чтения символов.
fgets () Возвращаемое значение
- В случае успеха функция fgets () возвращает str, а в случае неудачи возвращает нулевой указатель.
- Если сбой вызван состоянием конца файла, устанавливается
eof
индикатор. В этом случае содержимое str не изменяется. - Если сбой вызван какой-либо другой ошибкой, устанавливается индикатор ошибки. В этом случае содержимое str не определено. Они могут даже не иметь нулевого конца.
Пример: как работает функция fgets ()
#include #include using namespace std; int main() ( int count = 10; char str(10); FILE *fp; fp = fopen("file.txt","w+"); fputs("An example file", fp); fputs("Filename is file.txt", fp); rewind(fp); while(feof(fp) == 0) ( fgets(str,count,fp); cout << str << endl; ) fclose(fp); return 0; )
Когда вы запустите программу, возможный результат будет:
Пример файла Имя файла: file.t xt