2D массив структур
#include "matrix.h" mxArray *mxCreateStructMatrix(mwSize m, mwSize n, int nfields, const char **fieldnames);
#include "fintrf.h" mwPointer mxCreateStructMatrix(m, n, nfields, fieldnames) mwSize m, n integer*4 nfields character*(*) fieldnames(nfields)
mКоличество строк; должно быть положительное целое число.
nКоличество столбцов; должно быть положительное целое число.
nfieldsКоличество полей в каждом элементе.
имена полейСписок имен полей.
Каждое имя поля структуры должно начаться с буквы и является чувствительным к регистру. Остальная часть имени может содержать буквы, цифры и символы подчеркивания. Чтобы определить максимальную длину имени поля, используйте функцию namelengthmax.
Указатель на созданный mxArray, в случае успеха. Если неудачный в автономном (нефайл MEX) приложение, возвращает NULL в C (0 на Фортране). Если неудачный в файле MEX, файл MEX отключает и возвращает управление в подсказку MATLAB®. Функция неудачна, когда существует недостаточно свободного пространства "кучи", чтобы создать mxArray.
mxCreateStructMatrix и mxCreateStructArray почти идентичны. Единственная разница - то, что mxCreateStructMatrix может создать только двумерный mxArrays, в то время как mxCreateStructArray может создать mxArray, имеющий две или больше размерности.