Задайте буфер для MATLAB вывод
#include "engine.h" int engOutputBuffer(Engine *ep, char *p, int n);
#include "engine.h" integer*4 engOutputBuffer(ep, p) mwPointer ep character*n p
ep
Указатель Engine
p
Указатель на символьный буфер
n
Длина буферного p
1
, если вы передаете его указатель механизма NULL. В противном случае, возвращает 0
.
engOutputBuffer
задает символьный буфер для engEvalString
, чтобы возвратить любой вывод, который обычно появляется на экране.
Поведение по умолчанию engEvalString
должно отбросить любой стандартный вывод, вызванный командой, которую это выполняет. Вызов engOutputBuffer
с буфером ненулевой длины говорит любым последующим вызовам engEvalString
сохранять вывод в символьном буфере, на который указывает p
.
Чтобы выключить выходную буферизацию в C, используйте:
engOutputBuffer(ep, NULL, 0);
Чтобы выключить выходную буферизацию на Фортране, используйте:
engOutputBuffer(ep, '')
Буфером, возвращенным engEvalString
, не является отключенный NULL
.
См. следующие примеры в matlabroot / extern / examples / eng_mat.
engdemo.c
для примера C на операционных системах UNIX®.
engwindemo.c
для примера C на операционных системах Microsoft® Windows®.