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