mget reads byte or word in a given binary format and converts to a double type
mgeti reads byte or word in a given binary format and returns an int type

## Syntax

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

## Arguments

n

  a positive integer scalar: the number of items to be read.

fd

  a scalar: a file descriptor returned by the function `mopen`. `-1` stands for last opened file. Default value is `-1`.

type

  a string: the binary format used to write all the entries of `x`.

x

  a vector of floating point or integer numbers.

## Description

The `mget` function reads data in the input specified by the stream parameter `fd` and returns a vector of floating point data.

The `mgeti` function reads data in the input specified by the stream parameter `fd` and returns a vector of integer data.

Data is read at the position at which the file pointer is currently pointing and advances the indicator appropriately.

The `type` parameter is a conversion specifier which may be set to any of the following flag characters (with default value `"l"`):

On Windows, default behavior is to skip byte 13 (`0x0D`). `mopen` should be called with the `'b'` option, e.g. `fd1 = mopen(file1,'rb')`, so that all bytes will be read without exception.

Data type:

d

  double

f

  float

l

  long long int

i

  int or long int

s

  short

c

  character

Optional flag:

u..

  unsigned (in combination with one of the above types)

..l

  little endian (in combination with one of the above types)

..b

  big endian (in combination with one of the above types)

Bytes read is automatically swapped if necessary (by checking `little=endian` status).

This default swapping behavior can be suppressed by adding a flag in the `mopen` function.

Formats `"l"`, `"d"` and `"f"` are only valid with the `mget` function.

## Examples

    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);

## See also

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