mxGetFieldNameByNumber (C and Fortran)

Get field name, given field number in structure array

C Syntax

#include "matrix.h"
const char *mxGetFieldNameByNumber(const mxArray *pm, 
            int fieldnumber);

Fortran Syntax

character*(*) mxGetFieldNameByNumber(pm, fieldnumber)
mwPointer pm
integer*4 fieldnumber

Arguments

pm

Pointer to a structure mxArray

fieldnumber

The position of the desired field. For instance, in C, to get the name of the first field, set fieldnumber to 0; to get the name of the second field, set fieldnumber to 1; and so on. In Fortran, to get the name of the first field, set fieldnumber to 1; to get the name of the second field, set fieldnumber to 2; and so on.

Returns

A pointer to the nth field name, on success. Returns NULL in C (0 in Fortran) on failure. Common causes of failure include

Description

Call mxGetFieldNameByNumber to get the name of a field in the given structure mxArray. A typical use of mxGetFieldNameByNumber is to call it inside a loop in order to get the names of all the fields in a given mxArray.

Consider a MATLAB® structure initialized to:

patient.name = 'John Doe';
patient.billing = 127.00;
patient.test = [79 75 73; 180 178 177.5; 220 210 205];

In C, the field number 0 represents the field name; field number 1 represents field billing; field number 2 represents field test. A field number other than 0, 1, or 2 causes mxGetFieldNameByNumber to return NULL.

In Fortran, the field number 1 represents the field name; field number 2 represents field billing; field number 3 represents field test. A field number other than 1, 2, or 3 causes mxGetFieldNameByNumber to return 0.

C Examples

See phonebook.c in the refbook subdirectory of the examples directory.

Additional examples:

See Also

mxGetField, mxGetFieldByNumber, mxGetFieldNumber, mxGetNumberOfFields, mxIsStruct, mxSetField, mxSetFieldByNumber

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS