Установите элементы комплексных данных в mxUINT32_CLASS массив
#include "matrix.h" int mxSetComplexUint32s(mxArray *pa, mxComplexUint32 *dt);
Используйте mxSetComplexUint32s установить mxUint32 данные заданного mxArray.
Весь mxCreate* функции выделяют пространство "кучи", чтобы содержать данные. Поэтому вы обычно не используете эту функцию, чтобы инициализировать элементы массива. Скорее вызовите эту функцию, чтобы заменить существующие значения на новые значения.
Эта функция не освобождает память выделенный для существующих данных. Чтобы освободить существующую память, вызовите mxFree на указателе, возвращенном mxGetComplexUint32s.
Обратитесь к arrayFillSetComplexPr.c пример в папка, которая копирует существующие комплексные числовые данные в matlabroot/extern/examples/refbookmxArray. Данные в примере заданы как mxComplexDouble. Можно использовать этот пример в качестве шаблона для любого комплекса C числовой тип. Изменить этот пример для комплексного uint32 данные:
Объявите переменные данных как mxComplexUint32
Вызовите mxCreateNumericMatrix с числовым типом mxUINT32_CLASS
Замените mxSetDoubles с mxSetComplexUint32s помещать массив C в mxArray
Эта функция доступна в чередованном комплексном API. Создавать myMexFile.c с помощью этой функции введите:
mex -R2018a myMexFile.c