РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
521 of 815 menu

Функция fclose

Функция fclose закрывает файловый поток, который был ранее открыт с помощью функции fopen. В первый параметр мы передаем указатель на объект FILE, который идентифицирует закрываемый поток. После успешного закрытия все буферизованные данные записываются на диск, а сам поток становится недействительным. Функция возвращает 0 при успешном закрытии и EOF в случае ошибки.

Синтаксис

int fclose(FILE *stream);

Пример

Давайте откроем файл для записи, запишем в него строку и закроем поток:

#include <iostream> #include <cstdio> using namespace std; int main() { FILE *fp = fopen("test.txt", "w"); if (fp == nullptr) { cout << "Failed to open file" << endl; return 1; } fprintf(fp, "abcde"); if (fclose(fp) == 0) { cout << "File closed successfully" << endl; } else { cout << "Failed to close file" << endl; } return 0; }

Результат выполнения кода:

"File closed successfully"

Пример

Давайте прочитаем содержимое файла и корректно закроем поток после чтения:

#include <iostream> #include <cstdio> using namespace std; int main() { FILE *fp = fopen("test.txt", "r"); if (fp == nullptr) { cout << "Failed to open file" << endl; return 1; } char buf[100]; if (fgets(buf, sizeof(buf), fp) != nullptr) { cout << buf << endl; } fclose(fp); return 0; }

Результат выполнения кода:

"abcde"

Смотрите также

  • функция fopen,
    которая открывает файл и возвращает указатель на поток
  • функция fread,
    которая читает данные из файла
  • функция fwrite,
    которая записывает данные в файл
  • функция fprintf,
    которая записывает форматированные данные в файл
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить