c#调用matlab函数时,需要将C#数据类型转换成Matlab数据类型。
此时,需要引用MWArray.dll文件。该程序集包含了与Matlab数据交换的类。其中,MWArray类及每个派生类提供创建和访问 MATLAB 数据类型的方法。
所有类都派生自抽象的 MWArray 类和每个派生类,映射到 MATLAB 数据类型。但同样是抽象的 MWIndexArray 除外。

C#类 对应Matlab类型
MWNumericArray 数值数组 使用此类将c# 数值数组(如int[] )转Matlab数值数组
MWLogicalArray bool数组
MWCharArray 字符数组 c#字符串对应Matlab的一个字符数组
MWStructArray 结构数组 c#对象
MWCellArray 元组数组 c#泛型集合

Matlab函数如下:

function [code,msg] = Test(inta,strp)% box=[minx,maxx,miny,maxy,minz,maxz ] %inta = [1,2,3 ]; %数组%strp = {'Mercury','Gemini','Apollo','Skylab','Skylab B','ISS'}; %元组%strp2 = { {'Mercury',30},{'Gemini',40},{'Apollo',0}}; %元组size(strp); % 1行6列fid=fopen('out.txt','wt');fprintf(fid,'%s\n',strp{1,2});code = size(inta);fprintf(fid,'%g\n',inta(1,2));msg = 'yesy';fclose(fid);return
end

其中
c#代码如下

public int Test(List<double> box, List<string> pathName){MatlabV4.Class1 clazz = new MatlabV4.Class1();MWNumericArray mw_sigma = new MWNumericArray(box.ToArray());// MWCellArray cellArray = new MWCellArray(1,pathName.Count);//  MWNumericArray numericArray = new MWNumericArray();for (int i = 1; i < pathName.Count + 1; i++){cellArray[1,i] = ((MWCharArray)pathName[i - 1]);cellArray[1, i] = ((MWCharArray)pathName[i - 1]);}var ret=  clazz.Test(mw_sigma,cellArray);  //返回一个MWArray类型的变量MWNumericArray arr = (MWNumericArray)ret;return Convert.ToInt32(arr[1,1].ToScalarInteger());}

c#调用Matlab的参数传递相关推荐

  1. opencv通过dll调用matlab函数,图片作为参数

    [blog 项目实战派]opencv通过dll调用matlab函数,图片作为参数                   前文介绍了如何"csharp通过dll调用opencv函数,图片作为参数 ...

  2. Qt调用MATLAB

    Qt调用MATLAB 生成的dll经验分享 由于项目需要将生成的数据转成C3D运动捕捉格式,目前无C++转换算法,有MATLAB算法,考虑到C++重新码算法的时间,选择了将MATLAB算法直接转成C+ ...

  3. c 使用matlab引擎,[转载]C与MATLAB混合编程之调用MATLAB引擎

    Visual Studio调用MATLAB需要的配置已经在<Visual Studio调用MATLAB的配置>一文中给出了详细的步骤,本文将介绍混合编程的示例. 在C中调用MATLAB,据 ...

  4. VS下调用Matlab引擎

    VS2008是当前主流的应用程序开发环境之一,开发环境强大,开发的程序执行速度快.但在科学计算方面函数库显得不够丰富.读取.显示数据图形不方便.Matlab是一款将数值分析.矩阵计算.信号处理和图形显 ...

  5. java调用matlab 数组_JAVA调用matlab程序 输入输出数据转换

    JAVA调用matlab程序 输入输出数据转换 JAVA 程序调用 matlab函数(matlab导出jar包里的函数).JAVA解析matlab返回数据时,机器需要先安装matlab运行时环境 并 ...

  6. Java调用Matlab

    1 Java调用Matlab方法举例 ◆   将 Matlab 编写的 m 文件转化为 COM(Component Object Model) 组件,在 Java 程序中利用第三方工具包调用 com ...

  7. linux下java调用matlab程序,linux_java调用windows_matlab程序

    0 说明 本文为研究java和matlab的混合编程,进行了详细的测试和探索,以解决linux环境下java程序调用matlab程序的一个应用. linux端的环境 :(运行java程序并调用wind ...

  8. VS调用matlab

    可参照: VS2010调用Matlab的m文件所生产的dll实现二次规划算法.docx 全文-毕业论文-文档在线 http://max.book118.com/html/2013/1231/54228 ...

  9. Java调用Matlab程序

    Java调用Matlab程序_Macrocell-CSDN博客_java调用matlab

最新文章

  1. 可能是东半球最好的 Curl 学习指南,强烈建议收藏!
  2. Android“应用克隆”漏洞分析
  3. python怎么读取图像的txt标注_使用包含文件名的.txt文件读取图像数据
  4. RobotFramework中查询数据库相关
  5. 《TCP/IP详解》读书笔记
  6. 简单的MySql游标创建
  7. R语言重抽样与自助法
  8. C/C++[codeup 1923]排序
  9. java规则引擎Drools实战
  10. 别让PPT把你绑架了
  11. win8 完全禁用uac的方法
  12. 用python刷微信投票_微信投票知道 微信刷票能否python抓取微信投票_大师网络投票刷票网...
  13. Android-服务Service(2)-bind绑定Service及两种生命周期
  14. mac创建文件服务器,mac命令行终端怎么创建文件 mac命令行终端创建文
  15. 四步教你用网站源码建站
  16. 硬件开发——语音模块开发 (包含语音识别模块代码等资料包 )
  17. 有谁在阜阳计算机学校教英语,阜阳计算机学校怎么样、好不好
  18. 前端自学day04——css基础
  19. 首汽约车携手AWS,发布出行行业首个定制智能语音解决方案
  20. 在线教育行业未来的发展趋势

热门文章

  1. ssh、sftp、scp免密码登录
  2. 数据结构之排序算法(C语言)
  3. 圣杯布局简单结构代码!
  4. |Vijos|树状数组|P1512 SuperBrother打鼹鼠
  5. ios app提交之前需要哪几个证书
  6. 理解 __doPostBack(转)
  7. Android通过JNI调用驱动程序(完全解析实例)
  8. python接口测试面试题及答案_100道接口测试面试题收好了!【建议收藏】
  9. 浅析软件研发成本估算过程之估算软件项目工作量
  10. 大型网站系统与Java中间件实践 01 认识分布式