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