Main Content

engEvalString (C)

Evaluate expression in string

C Syntax

#include "engine.h"
int engEvalString(Engine *ep, const char *string);


engEvalString evaluates the expression contained in string for the MATLAB® engine session, ep, previously started by engOpen.

UNIX Operating Systems

On UNIX® systems, engEvalString sends commands to the MATLAB workspace by writing down a pipe connected to the MATLAB stdin process. MATLAB reads back from stdout any output resulting from the command that ordinarily appears on the screen, into the buffer defined by engOutputBuffer.

To turn off output buffering in C, use:

engOutputBuffer(ep, NULL, 0);

Microsoft Windows Operating Systems

On a Windows® system, engEvalString communicates with MATLAB using a Component Object Model (COM) interface.

Input Arguments

expand all

Pointer to engine, specified as Engine *.

Expression to evaluate, specified as const char *.

Output Arguments

expand all

Status, returned as int. The function returns 1 if the engine session is no longer running or the engine pointer is invalid or NULL. Otherwise, returns 0 even if the MATLAB engine session cannot evaluate the command.


See these 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.

Version History

Introduced before R2006a