

Программирование на языке MFC
Мой второй блог в серии программирования
Метод Read
Аргументами при вызове файла являются указатель на буфер, в который будут считаны данные, а также количество байтов, которые предполагается считать. Так как тип второго аргумента – UINT, то максимальное число байтов, которые мы можем считать, равно максимальному числу, которое можно разместить в переменной этого типа. Естественно, это зависит от системы, на которой запущена программа.
слово возвращаемого функцией ReadByte() значения равен NULL. Так как мы заведомо не можем указать, что считываем более байтов, чем можно указать при помощи UlNT’a, то количество считанных байтов уложится в 32 разряда, и указатель на двойное слово, содержащее старшие 32 разряда числа считанных байтов, нам просто-напросто не нужен. Как и обычно, в случае ошибки формируется исключение.
Для считывания информации можно воспользоваться также и методом ReadHuge(). Его исходный код находится в файле afx.ini:
_AFX_INLINE DWORD CFile::ReadHuge(void* lpBuffer,
DWORD dwCount) { return (DWORD)Read(lpBuffer, (UINT)dwCount); }
Похожие статьи: Метод Read
