Функция fgets: чтение строк из файла в языке программирования
Команда fgets
в языке программирования C используется для чтения строки из указанного файла вместе с символом новой строки (\n
), а также для чтения строки с клавиатуры. Она позволяет программисту контролировать количество символов, которые будут прочитаны из файла или вводимые с клавиатуры, и с легкостью обрабатывать их.
Пример использования функции fgets
для чтения строки из файла выглядит следующим образом:
#include <stdio.h>
int main() {
FILE *file;
char str[100];
file = fopen("example.txt", "r"); // открытие файла для чтения
if (file == NULL) {
printf("Не удалось открыть файл.\n");
return 1;
}
while (fgets(str, sizeof(str), file) != NULL) {
printf("%s", str);
}
fclose(file); // закрытие файла
return 0;
}
В этом примере сначала мы объявляем указатель на файл file
и массив символов str
, размер которого составляет 100 символов. Затем мы открываем файл с помощью функции fopen
, передавая ей имя файла и модификатор доступа "r" для чтения. При неудачном открытии файла мы выводим сообщение об ошибке и завершаем программу.
Затем мы используем цикл while
, который будет выполняться до тех пор, пока функция fgets
успешно считывает строку из файла. Функция fgets
принимает три аргумента: указатель на массив символов str
, размер этого массива и указатель на файл file
. Она считывает строку из файла и сохраняет ее в массив str
. Затем мы выводим прочитанную строку с помощью функции printf
.
После завершения цикла мы закрываем файл с помощью функции fclose
.
Теперь рассмотрим пример использования функции fgets
для чтения строки с клавиатуры:
#include <stdio.h>
int main() {
char str[100];
printf("Введите строку: ");
fgets(str, sizeof(str), stdin);
printf("Вы ввели: %s", str);
return 0;
}
В этом примере мы объявляем массив символов str
и выводим сообщение с помощью функции printf
, просим пользователя ввести строку. Затем мы используем функцию fgets
, передавая ей указатель на массив str
, его размер и указатель на стандартный поток ввода stdin
. Функция fgets
считывает строку, вводимую пользователем с клавиатуры, и сохраняет ее в массив str
. Затем мы выводим введенную строку с помощью функции printf
.
Таким образом, функция fgets
является мощным средством для чтения строк из файла или ввода с клавиатуры в языке программирования C. Она позволяет программисту контролировать количество считываемых символов и упрощает обработку входных данных.