mxSetData (C)

Установите указатель на элементы данных в нечисловом mxArray

Используйте mxSetData для нечисловых массивов только. mxSetData не рекомендуется для числовых массивов в приложениях C. Используйте введенные функции доступа к данным вместо этого. Для получения дополнительной информации смотрите Введенный Доступ к данным.

Синтаксис C

#include "matrix.h"
void mxSetData(mxArray *pm, void *pa);

Описание

Используйте mxSetData, чтобы установить элементы данных для нечисловых массивов только.

Эта функция не освобождает память выделенный для существующих данных. Чтобы освободить существующую память, вызовите mxFree на указателе, возвращенном mxGetData.

Входные параметры

развернуть все

Указатель на нечисловой mxArray.

Пустой указатель на массив данных.

Массив должен быть в динамической памяти; вызовите mxCalloc, чтобы выделить эту память. Не используйте функцию ANSI® C calloc, которая может вызвать продвижение проблем выравнивания памяти к завершению программы.

Версия API

Используйте эту функцию для нечисловых входных параметров только. В противном случае MathWorks рекомендует, чтобы вы обновили свой файл MEX, чтобы использовать Введенные функции Доступа к данным вместо этого.

Эта функция находится в отдельном комплексном API. Чтобы создать myMexFile.c с помощью этой функции, введите:

mex -R2017b myMexFile.c

Эта функция находится также в чередованном комплексном API. Однако результаты отличаются для комплексного входного параметра pm.

  • Если pm является действительным массивом, то pa становится действительным компонентом pm.

  • Если pm является комплексным массивом, то pa должен также быть комплексным. В противном случае элементы pa становятся чередованными действительными и мнимыми значениями, не действительно-единственными значениями.

Чтобы создать myMexFile.c с помощью чередованного комплексного API, введите:

mex -R2018a myMexFile.c

Смотрите также

Представлено до R2006a

Была ли эта тема полезной?