engOutputBuffer (C and Fortran)

Specify buffer for MATLAB output

C Syntax

#include "engine.h"
int engOutputBuffer(Engine *ep, char *p, int n);

Fortran Syntax

integer*4 engOutputBuffer(ep, p)
mwPointer ep
character*n p



Engine pointer


Pointer to character buffer


Length of buffer p


1 if you pass it a NULL engine pointer. Otherwise, returns 0.


engOutputBuffer defines a character buffer for engEvalString to return any output that ordinarily appears on the screen.

The default behavior of engEvalString is to discard any standard output caused by the command it is executing. A call to engOutputBuffer with a buffer of nonzero length tells any subsequent calls to engEvalString to save output in the character buffer pointed to by p.

To turn off output buffering in C, use:

engOutputBuffer(ep, NULL, 0);

To turn off output buffering in Fortran, use:

engOutputBuffer(ep, '')

    Note   The buffer returned by engEvalString is not NULL terminated.


See the following examples in matlabroot/extern/examples/eng_mat.

  • engdemo.c for a C example on UNIX® operating systems.

  • engwindemo.c for a C example on Microsoft® Windows® operating systems.

  • fengdemo.F for a Fortran example.

Was this topic helpful?