Неинициализированный числовой массив N-D
#include "matrix.h" mxArray *mxCreateUninitNumericArray(size_t ndim, size_t *dims, mxClassID classid, mxComplexity ComplexFlag);
ndim
Количество размерностей. Если вы задаете значение для ndim
, который является меньше чем 2, mxCreateUninitNumericArray
автоматически определяет номер размерностей к 2.
dims
Массив размерностей. Каждый элемент в массиве размерностей содержит размер массива в той размерности. Например, установка dims[0]
к 5 и dims[1]
к 7 устанавливают 5
-by-7
mxArray
. Обычно, массив dims
содержит элементы ndim
.
classid
Идентификатор для класса массива, который определяет путь числовые данные, представлен в памяти. Например, определение mxINT16_CLASS
заставляет каждую часть числовых данных в mxArray
быть представленной как 16-битное целое число со знаком.
ComplexFlag
Если mxArray
, который вы создаете, должен содержать мнимые данные, установить ComplexFlag
на mxCOMPLEX
. В противном случае установите ComplexFlag
на mxREAL
.
Указатель на созданный mxArray
. Если неудачный в автономном (нефайл MEX) приложение, возвращает NULL
. Если неудачный в файле MEX, файл MEX отключает и возвращает управление в подсказку MATLAB®. Функция неудачна, когда существует недостаточно свободного пространства "кучи", чтобы создать mxArray
.
Вызовите mxCreateUninitNumericArray
, чтобы создать N-мерный mxArray
, в котором всем элементам данных задал тип числовых данных classid
. Элементы данных не инициализируются.
mxCreateUninitNumericArray
выделяет динамическую память, чтобы сохранить созданный mxArray
. Вызовите mxDestroyArray
, чтобы освободить память.
Следующая таблица показывает значения classid
C, которые эквивалентны классам MATLAB.
Имя класса MATLAB |
C значение |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mxDestroyArray
, mxCreateUninitNumericMatrix
, mxCreateNumericArray