matlab與c混合程式設計實現方法

2021-08-09 00:02:44 字數 1074 閱讀 1534

系統:win7 64bit

matlab版本:9.1.0.441655 (r2016b)

變數名:mw_mingw64_loc

變數值:安裝路徑

3)在matlab中輸入:

>>setenvc(『mw_mingw64_loc』,』安裝路徑』)

4)重啟matlab

5)輸入

>>mex_setup

設定操作到這裡基本就可以告一段落了,接下來我們要對c++原始檔做一些改變才能夠使matlab引用和執行。這裡舉個例子比較容易明白過程。還有些地方沒有搞太懂,留在以後真正用到的時候在做補充。
1)假設寫了乙個c++原始檔,例如123.cpp

2)對原始檔進行c++與matlab混合程式設計的語法改造

3)在matlab中輸入

>>mex 123.cpp

之後就產生了乙個123.mexw64檔案

4)在matlab中輸入

>>123()

呼叫該函式

對123.cpp進行的改造:

1)加標頭檔案

#include」mex.h」

2)介面藉口函式

void mexfunction(int nlhs,mxarray *plhs,int nrhs,const mxarray *prhs){}

對引數的說明:

nlhs:指示matlab的呼叫命令中等號左側有幾個變數。

plhs:指示matlab的呼叫命令中等號左側變數的指標。

nrls:指示matlab的呼叫命令中等號右側的變數的個數。

prhs:指示matlab呼叫命令中等號右側的變數指標。

c 與matlab混合程式設計

實驗平台 matlab r2016b vs2013 思路 1.設定matlab的編譯器,使用外部的vc或者gcc等編譯器。2.編譯m檔案成dll 3.設定vs的include路徑和lib鏈結庫的路徑 4.編寫c 呼叫dll 步驟 1.設定matlab的編譯器 在命令列視窗下,輸入並執行如下命令 me...

C 與matlab混合程式設計

環境 vs2010 matlab2010 首先,編寫乙個函式集的.m檔案。函式名稱 class netbuilder func 1 function y class netbuilder func f 2 t linspace 0,1,400 3 y sin 2 pi f t 4plot t,y 5...

Matlab與C 混合程式設計問題

最近做的工程涉及到了matlab與c 混合程式設計的問題,下面把一些比較困擾的問題記下來。解決 在系統環境變數新增.matlab r2010a bin win32,並重啟電腦。問題2 初始化函式呼叫正確,卻總是顯示matlab混合程式設計生成的dll庫初始化錯誤。解決 原來是我的debug檔案中包含...