メインコンテンツ

engEvalString (C)

文字列内の式の評価

C 構文

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

説明

engEvalString は、engOpen によって以前に起動された MATLAB® エンジン セッション epstring に含まれている式を評価します。

UNIX オペレーティング システム

UNIX® システムでは、engEvalString は MATLAB stdin プロセスに接続されているパイプを書き込むことで、コマンドを MATLAB ワークスペースに送信します。MATLAB は、画面に通常表示されるコマンドの出力結果を stdout から読み取り、engOutputBuffer で定義されているバッファーに格納します。

C で出力バッファー処理をオフにするには、以下を使用します。

engOutputBuffer(ep, NULL, 0);

Microsoft Windows オペレーティング システム

Windows® システムでは、engEvalString はコンポーネント オブジェクト モデル (COM) インターフェイスを使用して MATLAB と通信します。

メモ

C++ 用の MATLAB エンジン API の matlab::engine::MATLABEngine.eval 関数が engEvalString よりも推奨されます。C++ 用の MATLAB エンジン API には、エンジン アプリケーションを作成するための最新の C++ 機能が含まれています。詳細については、C++ からの MATLAB の呼び出しを参照してください。engEvalString や C 用のエンジン API を削除する予定はありません。

入力引数

すべて展開する

エンジンへのポインター。Engine * として指定します。

評価する式。const char * として指定します。

出力引数

すべて展開する

ステータス。int として返されます。エンジン セッションが実行されなくなったか、エンジン ポインターが無効または NULL である場合は、関数により 1 が返されます。それ以外の場合には、MATLAB エンジン セッションでコマンドを評価できない場合でも 0 が返されます。

Windows での C エンジン アプリケーションにおける MATLAB 関数の評価

次の C コードでは、Windows システムでデータをプロットするために MATLAB コマンドを渡す方法を示します。

 engwindemo.c

Linux または macOS での C エンジン アプリケーションにおける MATLAB 関数の評価

次の C コードでは、Linux® または macOS システムでデータをプロットするために MATLAB コマンドを渡す方法を示します。

 engdemo.c

バージョン履歴

R2006a より前に導入