mxGetElementSize (C and Fortran) - Number of bytes required to store each data element
C Syntax
#include "matrix.h"
size_t mxGetElementSize(const mxArray *pm);
Fortran Syntax
mwPointer mxGetElementSize(pm)
mwPointer pm
Arguments
- pm
Pointer to an mxArray
Returns
Number of bytes required to store one element of the specified mxArray,
if successful. Returns 0 on failure. The primary reason for failure
is that pm points to an mxArray having
an unrecognized class. If pm points to a cell mxArray or
a structure mxArray, mxGetElementSize returns
the size of a pointer (not the size of all the elements in each cell
or structure field).
Description
Call mxGetElementSize to determine the
number of bytes in each data element of the mxArray.
For example, if the MATLAB class of an mxArray is int16,
the mxArray stores each data element as a 16-bit
(2-byte) signed integer. Thus, mxGetElementSize returns 2.
mxGetElementSize is helpful when using
a non-MATLAB routine to manipulate data elements. For example,
the C function memcpy requires (for its third argument)
the size of the elements you intend to copy.
Note
Fortran does not have an equivalent of size_t. mwPointer is a preprocessor
macro that provides the appropriate Fortran type. The
value returned by this function, however, is not a pointer. |
C Examples
See doubleelement.c and phonebook.c
in the matlabroot/extern/examples/refbook folder
.
See Also
mxGetM, mxGetN
 | mxGetDimensions (C and Fortran) | | mxGetEps (C and Fortran) |  |
Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
Get the Interactive Kit