| External Interfaces/API Reference | ![]() |
Get a field value, given a field name and an index in a structure array
C Syntax
#include "matrix.h" mxArray *mxGetField(const mxArray *array_ptr, int index, const char *field_name);
Arguments
array_ptr
Pointer to a structure mxArray.
index
The desired element. The first element of an mxArray has an index of 0, the second element has an index of 1, and the last element has an index of N-1, where N is the total number of elements in the structure mxArray.
field_name
The name of the field whose value you want to extract.
Returns
A pointer to the mxArray in the specified field at the specified field_name, on success. Returns NULL if passed an invalid argument or if there is no value assigned to the specified field. Common causes of failure include:
array_ptr that does not point to a structure mxArray. To determine if array_ptr points to a structure mxArray, call mxIsStruct.
index to an element past the end of the mxArray. For example, given a structure mxArray that contains 10 elements, you cannot specify an index greater than 9.
field_name. Call mxGetFieldNameByNumber or mxGetFieldNumber to get existing field names.
mxArray.
Description
Call mxGetField to get the value held in the specified element of the specified field. In pseudo-C terminology, mxGetField returns the value at
mxGetFieldByNumber is similar to mxGetField. Both functions return the same value. The only difference is in the way you specify the field. mxGetFieldByNumber takes field_num as its third argument, and mxGetField takes field_name as its third argument.
where index is zero if you have a one-by-one structure.
See Also
mxGetFieldByNumber, mxGetFieldNameByNumber, mxGetFieldNumber, mxGetNumberOfFields, mxIsStruct, mxSetField, mxSetFieldByNumber
| mxGetEps | mxGetFieldByNumber | ![]() |