This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

mxGetCell (C and Fortran)

Pointer to element in cell array

C Syntax

#include "matrix.h"
mxArray *mxGetCell(const mxArray *pm, mwIndex index);

Fortran Syntax

#include "fintrf.h"
mwPointer mxGetCell(pm, index)
mwPointer pm
mwIndex index



Pointer to a cell mxArray


Number of elements in the cell mxArray between the first element and the desired one. See mxCalcSingleSubscript for details on calculating an index in a multidimensional cell array.


Pointer to the ith cell mxArray if successful. Otherwise, returns NULL in C (0 in Fortran). Causes of failure include:

  • Specifying the index of a cell array element that has not been populated.

  • Specifying a pm that does not point to a cell mxArray.

  • Specifying an index to an element outside the bounds of the mxArray.

  • Insufficient heap space.

Do not call mxDestroyArray on an mxArray returned by the mxGetCell function.


Call mxGetCell to get a pointer to the mxArray held in the indexed element of the cell mxArray.


Inputs to a MEX-file are constant read-only mxArrays. Do not modify the inputs. Using mxSetCell* or mxSetField* functions to modify the cells or fields of a MATLAB® argument causes unpredictable results.


See the following examples in matlabroot/extern/examples/mex.

Introduced before R2006a

Was this topic helpful?