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