CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по библиотечным функциям языка Си
read - читать блок из файла
Описание
Системный вызов read берет (читает) очередной блок
литер из файла, связанного с дескриптором файла fd.
Число байтов, считываемых в буфер buffer определяется
параметром length. Пересылка производится без преобра-
зований (это обращение к MS DOS).
Использование
#include <io.h>
int read (unsigned fd, void *buffer, unsigned length);
Возвращаемое значение
Возвращает число реально считанных литер, которое мо-
жет быть меньше, чем length, если встретился конец
файла. Если произошла ошибка чтения, возвращается зна-
чение -1 и устанавливается errno.
Пример
#include <stdio.h>
#include <stdlib.h>
#include <dos.h>
#include <io.h>
#define BYTECOUNT 255
main()
{
char *buffer;
int fd, numread, count;
if (( fd = open("file.dat", O_RDONLY))== -1)
{
perror("open failed on file file.dat");
exit(1);
}
buffer = malloc(BYTECOUNT+1);
for (count = 0; count < BYTECOUNT; count++)
buffer[count]=`\0';
numread = read(fd, buffer, BYTECOUNT);
printf("/n Число считанных литер %d\n",numread);
close(fd);
free(buffer);
}
Рекомендация
Смотрите также fread, open, write.
