メインコンテンツ

C からの MATLAB の呼び出し

mxArray を使用して C プログラムから MATLAB® コードを実行する

エンジン アプリケーションとは、独自の C/C++ プログラムから MATLAB を呼び出し、MATLAB を計算エンジンとして使用できるプログラムです。C エンジン アプリケーションをビルドするには、mex 関数を呼び出します。

メモ

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

エンジン アプリケーションを使用するには MATLAB がインストールされている必要があります。マシンに MATLAB Runtime しかない場合は MATLAB エンジンを実行できません。

C エンジン アプリケーションをビルドするには、以下が必要です。

  • C ソース コードの作成経験。C 用のエンジン API およびC 行列 API関数を使用して、C ソース コード ファイルを作成できる。

  • MATLAB でサポートされているコンパイラ。サポートされているコンパイラの最新の一覧については、サポートされるコンパイラを参照してください。

  • -client engine オプションを指定して mex ビルド スクリプトを使用する。

C 用のエンジン API

EngineMATLAB エンジンの型
engOpenMATLAB エンジン セッションの開始
engOpenSingleUse共有されない単独使用のための MATLAB エンジン セッションの開始
engCloseMATLAB エンジン セッションの終了
engEvalString文字列内の式の評価
engGetVariableMATLAB エンジン ワークスペースからの変数のコピー
engPutVariableMATLAB エンジン ワークスペースへの変数の配置
engGetVisibleMATLAB エンジン セッションの可視性の判断
engSetVisibleMATLAB エンジン セッションの表示または非表示
engOutputBufferMATLAB 出力のバッファーの指定

トピック

要件

エンジン アプリケーションの作成

エンジン アプリケーションのビルドと実行

トラブルシューティング

MATLAB エンジンを開始できない

MATLAB エンジンが実行されない場合の対処方法。

C エンジンによって呼び出される MATLAB 関数のデバッグ

エンジン アプリケーションで使用される MATLAB 関数の検証方法。

ユーザー入力のサポートなし

ユーザーとの対話を行う一部の MATLAB 関数は、エンジン アプリケーションではサポートされていません。

マルチスレッド アプリケーション

MATLAB ライブラリは、スレッドセーフではありません。