Файловый ввод-вывод является одной из важных функциональных возможностей языка программирования C. Функции fopen, fclose, fread и fwrite позволяют программисту открыть файл для чтения или записи, закрыть файл после окончания операций с ним, а также считывать или записывать данные в файл.
Функция fopen используется для открытия файла. Она принимает два аргумента: имя файла и режим доступа. Режим доступа может быть "r" (для чтения), "w" (для записи) или "a" (для добавления данных в конец файла). Функция fopen возвращает указатель на структуру FILE, которая содержит информацию о файле.
Пример использования функции fopen для открытия файла для чтения:
Функция fclose используется для закрытия открытого файла. Она принимает указатель на структуру FILE, возвращает 0 в случае успешного закрытия файла и EOF (константа, представляющая конец файла) в случае ошибки.
Пример использования функции fclose для закрытия файла:
Функции fread и fwrite используются для чтения и записи данных в файл соответственно. Наиболее часто используемые аргументы этих функций – указатель на блок памяти (в котором хранятся данные), размер каждого элемента данных в байтах, количество элементов данных, указатель на открытый файл.
Пример использования функции fread для чтения данных из файла:
В данном примере мы читаем 5 целочисленных значений из файла в массив numbers. Функция fread возвращает количество прочитанных элементов, которое может быть меньше заданного, если достигнут конец файла или произошла ошибка.
Пример использования функции fwrite для записи данных в файл:
В этом примере мы записываем 5 целочисленных значений из массива numbers в файл. Функция fwrite возвращает количество записанных элементов, которое может быть меньше заданного в случае ошибки или полного заполнения доступного пространства на диске.
Файловый ввод-вывод в языке C позволяет программистам работать с файлами, читать и записывать данные, а также управлять файловыми операциями. Надеюсь, эта статья поможет вам начать использовать функции fopen, fclose, fread и fwrite для работы с файлами в языке программирования C.