日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vc6.0 matlab混合编程,matlab2010 + vc6.0混合编程实例(调用dll)

發布時間:2023/12/1 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vc6.0 matlab混合编程,matlab2010 + vc6.0混合编程实例(调用dll) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

不想解釋太多直接上代碼吧!!!

在對matlab配置后,上代碼mcc -W cpplib:libMyAdd -T link:lib MyAdd -C就可以了,記得加上-C

在對VC6.0進行配置的時候只要把 matlabroot\extern\include和matlabroot\extern\lib\win32\microsoft加入到VC6.0中去了,i.e.可以通過Tools->Options->Directories->show directories for 中的Include files和library files添加路徑;

#include "libMyAdd.h"

#pragma comment(lib, "libMyAdd.lib")

#pragma comment(lib, "mclmcrrt.lib")

using std::cout;

using std::cin;

using std::endl;

int main(void)

{

double a = 0;

double b = 0;

double c = 0;

// initialize lib

if( !libMyAddInitialize())

{

cout << "Could not initialize libMyAdd!" << endl;

return -1;

}

cout << "input a: ";

cin >> a;

cout << "\ninput b: ";

cin >> b;

//為變量分配內存空間

mwArray mwA(1, 1, mxDOUBLE_CLASS);//1,1表示矩陣的大小(所有matlab只有一種變量,就是矩陣,

//為了和CPP變量接軌,設置1*1的矩陣,mxDOUBLE_CLASS表示變量的精度

mwArray mwB(1, 1, mxDOUBLE_CLASS);

mwArray mwC(1, 1, mxDOUBLE_CLASS);

//調用SetData函數賦值

mwA.SetData(&a,1);

mwB.SetData(&b,1);

//調用自己寫的函數MyAdd

MyAdd(1, mwC, mwA, mwB);

//調用Get函數獲取函數返回值

c = mwC.Get(1,1);

cout << "c is " << c << endl;

//后面一些終止調用程序

libMyAddTerminate();

mclTerminateApplication();

return 0;

}

運行結果:

總結

以上是生活随笔為你收集整理的vc6.0 matlab混合编程,matlab2010 + vc6.0混合编程实例(调用dll)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。