mexPutVariable (C)

Массив из MEX-функции в заданную рабочую область

Синтаксис C

#include "mex.h"
int mexPutVariable(const char *workspace, const char *varname, 
  const mxArray *pm);

Описание

Примечание

Чтобы записать MEX-функции с помощью современных функций C++ и MATLAB Data API, смотрите Приложения C++ MEX.

Звонить mexPutVariable для копирования mxArray, по указателю pm, из вашей MEX-функции в указанную рабочую область. MATLAB® присваивает varname на mxArray скопирован в рабочую область.

mexPutVariable делает массив доступным для других сущностей, таких как MATLAB, пользовательские функции или другие MEX-функции.

Если переменная с таким же именем существует в указанной рабочей области, mexPutVariable перезаписывает предыдущее содержимое переменной содержимым нового mxArray. Например, предположим, что рабочее пространство MATLAB задаёт переменную Peaches как:

Peaches
1     2     3     4

и вы звоните mexPutVariable для копирования Peaches в ту же рабочую область:

mexPutVariable("base", "Peaches", pm)

Значение, переданное mexPutVariable заменяет старое значение Peaches.

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

расширить все

Возможности копируемого массива, заданная как const char*. Возможные значения:

base

Копировать mxArray на базовое рабочее пространство.

caller

Копировать mxArray в рабочую область вызывающего абонента.

global

Копировать mxArray в список глобальных переменных.

Имя mxArray в рабочей области, заданной как const char*.

Не используйте имена функций MATLAB для имен переменных. Общие имена переменных, которые конфликтуют с именами функции, включают i, j, mode, char, size, или path. Чтобы определить, связано ли конкретное имя с функцией MATLAB, используйте which функция.

Указатель на mxArray.

Выходные аргументы

расширить все

Состояние, возвращается как 0 на успехе. Возвращает 1 при отказе. Возможной причиной отказа является то, что pm является NULL.

Примеры

См. эти примеры в matlabroot/ extern/examples/mex:

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