MATLAB Application Program Interface | Search  Help Desk |
mxSetFieldByNumber | See Also |
Set a field value in a structure array, given a field number and an index
#include "matrix.h" void mxSetFieldByNumber(mxArray *array_ptr, int index, int field_number, mxArray *value);array_ptr
mxArray
. Call mxIsStruct
to determine if array_ptr
points to a structure mxArray
.
index
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
. See mxCalcSingleSubscript
for details on calculating an index.
field_number
field_number
of 0, the second field has a field_number
of 1, and so on. The last field has a field_number
of N-1
, where N
is the number of fields.
value
mxSetCell*
or mxSetField*
to modify the cells or fields of an argument passed from MATLAB will cause unpredictable results.
Use mxSetFieldByNumber
to assign a value
to the specified element of the specified field. mxSetFieldByNumber
is almost identical to mxSetField
; however, the former takes a field number as its third argument and the latter takes a field name as its third argument.
mxCreateStructArray
, mxCreateStructMatrix
, mxGetField
, mxGetFieldByNumber
, mxGetFieldNameByNumber
, mxGetFieldNumber
, mxGetNumberOfFields
, mxIsStruct
, mxSetField