Поместите переменную в рабочую область движка MATLAB
#include "engine.h" int engPutVariable(Engine *ep, const char *name, const mxArray *pm);
#include "engine.h" integer*4 engPutVariable(ep, name, pm) mwPointer ep, pm character*(*) name
ep
Указатель Engine
имя
Имя mxArray
в рабочей области механизма
\pm
Указатель mxArray
0
, если успешный и 1
, если ошибка происходит.
engPutVariable
пишет mxArray
pm
в механизм ep
, давая ему имя переменной name
.
Если mxArray
не существует в рабочей области, функция создает его. Если mxArray
с тем же именем существует в рабочей области, функция заменяет существующий mxArray
на новый mxArray
.
Предел для размера переданных данных составляет 2 Гбайт.
Не используйте имена функций MATLAB® для имен переменных. Общие имена переменных, которые конфликтуют с именами функций, включают i
, j
, mode
, char
, size
или path
. Чтобы определить, сопоставлено ли конкретное имя с функцией MATLAB, используйте функцию which
.
Приложение механизма владеет исходным mxArray
и ответственно за освобождение его памяти. Несмотря на то, что функция engPutVariable
отправляет копию mxArray
к MATLAB workspace, приложение механизма не должно составлять или освободить память для копии.
См. следующие примеры в matlabroot / extern / examples / eng_mat.
engdemo.c
для примера C на операционных системах UNIX®.
engwindemo.c
для примера C на операционных системах Microsoft® Windows®.