Функции библиотеки C -fread()
Стандартная библиотека C - <stdio.h>
Описание
Функции библиотеки Csize_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)Из заданного потокаstreamСчитать данные вptrВ массив, на который указывает.
Объявление
Ниже приведено объявление функции fread().
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
Параметр
- ptr-- Это указатель на блок памяти минимального размераsize*nmembуказатель на блок памяти в байтах.
- size-- Это размер в байтах каждого элемента, который нужно прочитать.
- nmemb-- Это количество элементов, каждый размером size байт.
- stream-- Это указатель на объект FILE, который задаёт входной поток.
Возвращаемое значение
Общее количество успешно прочитанных элементов возвращается как объект size_t, который является целочисленным типом данных. Если общее количество отличается от параметра nmemb, могла произойти ошибка или был достигнут конец файла.
Пример
Следующий пример демонстрирует использование функции fread().
Пример
#include <string.h>
int main()
{
FILE *fp;
char c[] = "This is example";
char buffer[20];
/* Открыть файл для чтения и записи */
fp = fopen("file.txt", "w+");
/* Записать данные в файл */
fwrite(c, strlen(c) + 1, 1, fp);
/* Найти начало файла */
fseek(fp, 0, SEEK_SET);
/* Прочитать и отобразить данные */
fread(buffer, strlen(c)+1, 1, fp);
printf("%s\n", buffer);
fclose(fp);
return(0);
}
Скомпилируем и запустим вышеприведённую программу, которая создаст файлfile.txt, затем запишет содержимоеThis is example. Далее мы используемfseek()Функция для сброса указателя записи в начало файла, содержимое файла следующее:
This is exampleДругие расширения