# mget

считывает байт или слово в заданном двоичном формате и преобразует в число удвоенной точности

# mgeti

считывает байт или слово в заданном двоичном формате и возвращает целочисленное значение типа int

## Последовательность вызова

                x = mget([n, type, fd])
                x = mgeti([n, type, fd])

## Аргументы

n

  положительный скаляр: количество считываемых данных.

fd

  скаляр: параметр `fd`, возращённый функцией `mopen`. Для последнего открытого файла ставится -1. Значение по умолчанию -1.

type

  строка: двоичный формат, используемый для записи всех элементов `x`.

x

  вектор целых чисел или чисел с плавающей запятой.

## Описание

Функция `mget` считывает данные со входа, определённого параметром потока `fd` и возвращает вектор данных с плавающей запятой.

Функция `mgeti` считывает данные со входа, определённого параметром потока `fd` и возвращает вектор целочисленных данных.

Данные считываются в положении, на которое в данный момент указывает указатель файла и передвигает индикатор далее соответствующим образом.

Параметр `type` является указателем преобразования, который может быть установлен в любой из следующих символов-флагов (со значением по умолчанию `"l"`):

В Windows, поведение по умолчанию состоит в пропуске байта 13 (`0x0D`). Функцию `mopen` следует вызывать с опцией `'b'`, например, `fd1 = mopen(file1,'rb')`, так что все байты без исключения будут прочитаны.

Тип данных:

d

  удвоенная точность, double

f

  плавающая запятая, float

l

  длинное, long long

i

  целочисленное, int (long int)

s

  короткое, short

c

  символ, character

Необязательный флаг:

u..

  беззнаковый (в сочетании с одним из вышеперечисленных типов)

..l

  прямой порядок байтов (в сочетании с одним из вышеперечисленных типов)

..b

  обратный порядок байтов (в сочетании с одним из вышеперечисленных типов)

Чтение байтов автоматически переключается при необходимости (с помощью проверки статуса `little=endian`).

Такое поведение переключения можно подавить, если добавить флаг в функцию `mopen`.

Форматы `"l"`, `"d"` и `"f"` корректны только с функцией `mget`.

## Примеры

    file1 = fullfile(TMPDIR,'test1.bin');
    file2 = fullfile(TMPDIR,'test2.bin');
    fd1=mopen(file1,'wb');
    fd2=mopen(file2,'wb');
    mput(1996,'ull',fd1);
    mput(1996,'ull',fd2);
    mclose(fd1);
    mclose(fd2);

    fd1=mopen(file1,'rb');
    if 1996<>mget(1,'ull',fd1)
      write(%io(2),'Bug');
    end

    fd2=mopen(file2,'rb');
    if 1996<>mget(1,'ull',fd2)
      write(%io(2),'Bug');
    end

    mclose(fd1);
    mclose(fd2);

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

- mclose
- meof
- mfprintf
- fprintfMat
- mfscanf
- fscanfMat
- mgetl
- mgetstr
- mopen
- mprintf
- mput
- mputl
- mputstr
- mseek
- mtell
- mdelete