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