mxCreateStructArray (C)

N-D массив структур

Синтаксис C

#include "matrix.h"
mxArray *mxCreateStructArray(
    mwSize ndim, const mwSize *dims, int nfields, const char **fieldnames);

Описание

Звонить mxCreateStructArray для создания незаселенной структуры mxArray. Каждый элемент массива структуры mxArray содержит то же количество полей (указано в nfields). Каждое поле имеет имя, указанное в fieldnames. MATLAB® структура mxArray концептуально идентичен массиву structs на языке C.

Каждое поле содержит по одному mxArray указатель, инициализированный как NULL. Звонить mxSetField или mxSetFieldByNumber для размещения не- NULL mxArray указатель в поле.

Функция автоматически удаляет конечные синглтонные размерности, указанные в dims аргумент. Для примера, если ndim равен 5 и dims равен [4 1 7 1 1], тогда размерности получившегося массива 4-by- 1-by- 7.

Звонить mxDestroyArray когда вы заканчиваете использовать mxArray для удаления mxArray и связанных с ним реальных и мнимых элементов.

Входные параметры

расширить все

Количество размерностей, заданное как mwSize. Если ndim меньше 2, тогда mxCreateStructArray устанавливает количество размерностей равным 2.

Массив размерностей, заданный как массив const mwSize.

Каждый элемент массива размерностей содержит размер массива в этом измерении. Например, чтобы создать 5-by- 7 массив, установка dims[0] до 5 и dims[1] до 7.

Обычно, dims массив содержит ndim элементы.

Количество полей в каждом элементе, заданное как int.

Одно или несколько имен полей, заданные как const char **.

Имена полей должны быть допустимыми идентификаторами MATLAB, что означает, что они не могут быть NULL или пустой. Имена полей зависят от регистра. Чтобы определить максимальную длину имени поля, используйте namelengthmax функция.

Выходные аргументы

расширить все

Указатель на mxArray, заданный как mxArray *.

Функция неудачна, когда не хватает свободного пространства в куче, чтобы создать mxArray.

  • Файл MEX - Function завершает Файл MEX и возвращает управление в подсказку MATLAB.

  • Автономное (не-MEX файл) приложение - Функция возвращает NULL.

Примеры

См. эти примеры в matlabroot/ extern/examples/mx:

Представлено до R2006a