MATLAB編譯cpp文件

http://blog.csdn.net/jkhere/article/details/8906274

目的:打通MATLAB與VC之間的通道,實現用MATLAB調用VC程序,以及VC調用MATLAB程序。

上篇博客實現了將MATLAB的M文件編譯成C/C++文件,exe應用程序。這篇實現MATLAB編譯CPP代碼。

  1. #include "mex.h"   
  2. void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])   
  3. {  
  4. int i;   
  5. i=mxGetScalar(prhs[0]);   
  6. if(i==1)   
  7.   mexPrintf("hello,world!\n");   
  8. else   
  9.   mexPrintf("大家好!\n");   
  10. }  

上面是一個簡單的C++代碼,保存成helloworld.cpp。簡單解釋一下:

  1. void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])   

是MEX的接口子程序,接口子程序是與MATLAB的接口,實現兩個不同內存空間中的通信。

在matlab命令行中:

輸入 mex helloworld.cpp,編譯成功。

結果:


注意:在調用mex之前必須先設置好編譯器,編譯器的設置很簡單,見我上篇博客,不多說。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章