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