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