Number of bytes required to store each data element
For a complex
mxArray built with the interleaved complex API,
mxGetElementSize returns twice the value that the function in the
separate complex API returns. For more information, see Compatibility Considerations.
#include "matrix.h" size_t mxGetElementSize(const mxArray *pm);
mxGetElementSize to determine the number of bytes in each
data element of the
mxArray. For example, if the MATLAB® class of an
mxArray stores each data element as a 16-bit (2-byte) signed
mxGetElementSize is helpful when using a non-MATLAB routine to manipulate data elements. For example, the C function
memcpy requires the size of the elements you intend to
pm— MATLAB array
Pointer to an
nbytes— Number of bytes
Number of bytes required to store one element of the specified
pm is complex numeric, then the data in the output
argument depends on which version of the C Matrix API you use.
If you build with the interleaved complex API
-R2018a option), then the return value is
T is the data type of the array.
If you build with the separate complex API
-R2017b option), then the function returns the
number of bytes for the data type of the array regardless whether
the array is complex or real.
pm points to a cell or structure, then
mxGetElementSize returns the size of a pointer. The
function does not return the size of all the elements in each cell or
Returns 0 on failure. The primary reason for failure is that
pm points to an
mxArray having an