mexPutVariable (C)

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

Синтаксис C

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

Описание

Примечание

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

Вызовите mexPutVariable, чтобы скопировать mxArray, в указателе pm, от вашей MEX-функции в заданную рабочую область. MATLAB® присваивает varname mxArray, скопированному в рабочей области. Функция возвращает 0 на успехе; 1 на отказе. Возможная причина отказа состоит в том, что pm является NULL.

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

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

Peaches
1     2     3     4

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

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

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

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

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

Осциллограф массива, чтобы скопировать, заданный как const char*. Возможные значения:

base

Скопируйте mxArray в базовое рабочее пространство.

caller

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

глобальная переменная

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

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

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

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

Примеры

См. следующие примеры в matlabroot /extern/examples/mex.

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

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