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