可参照:

VS2010调用Matlab的m文件所生产的dll实现二次规划算法.docx 全文-毕业论文-文档在线

http://max.book118.com/html/2013/1231/5422885.shtm

VS调用matlab_HuoChengfu_新浪博客
http://blog.sina.com.cn/s/blog_4d1865f00100r4ad.html

VS调用matlab的一些设置

MyFunction.m :
function MyFunction(x,y)
   z = extra1(y);

figure(1)
   plot(x,z);
   grid
   print(1,'-dpng','D:\abc.png');//保存图片
   end

extra1.m :
function z=extra1(y)
 
   for i=1:20
      z(i) = y(i);
   end

for i=21:30
       z(i)=3*y(i);
   end
说明:Matlab里MyFunction(x,y)调用z=extra1(y)
      希望在C++中调用MyFunction(x,y)

1、配置环境,见前面博客文章
2、Matlab:mcc -C -W cpplib:filename -T link:lib MyFunction.m
   注:filename可任意取名
       只需编译MyFunction.m即可,编译器会自动寻找其调用的函数,不需管extra1.m
3、“2”会生成filename.h(.lib .dll .ctf),只需要这4个,.cpp和其它用不着
4、将上述四个文件copy到VC工程中
5、project添加filename.lib,解决方案中添加filename.h
6、C函数: filenameInitialize();//必须(filename与前面一致)
            int Num = 30;
            mwArray x(1,Num,mxDOUBLE_CLASS);
            mwArray y(1, Num, mxDOUBLE_CLASS);
          for(int i = 1; i <= Num; i++)
          {
      x(1, i) = i;
     y(1, i) = 2 * i;
          }
            MyFunction(x, y);//调用函数,参数x,y必须为矩阵mwArray格式,其余不接收
          filenameTerminate();//非必须,可写在析构函数,这样matlab图不会立即消失

----------------------------------------------------------------------------------------------

注:filename.m与function funcname(),最好filename = funcname

1、Matlab生成dll,lib等(可被C++调用)
mcc -C -W cpplib:filename -T link:lib function.m

2、VC++调用Matlab生成的dll见
   “VS2008调用Matlab2010生成的dll流程.txt”

3、Matlab生成exe
 mcc -m filename

4、VC++调用exe:
  #include <shellapi.h>
  system("D:\\filename.exe");  //路径及exe名字可改
  如何在exe中使参数可调? 待续。。。

VS调用matlab相关推荐

  1. Qt调用MATLAB

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

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

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

  3. VS下调用Matlab引擎

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

  4. c#调用Matlab的参数传递

    c#调用matlab函数时,需要将C#数据类型转换成Matlab数据类型. 此时,需要引用MWArray.dll文件.该程序集包含了与Matlab数据交换的类.其中,MWArray类及每个派生类提供创 ...

  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. Java调用Matlab程序

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

  9. codeblocks调用matlab,matlab engine: 在Codeblocks中使用C++调用matlab | 学步园

    平台:XP,Code::Blocks 10.05(包含gcc 4.4.1),matlab 2010b 方式:C++调用matlab引擎 设置步骤: (一)系统变量:path中添加MinGW\bin; ...

最新文章

  1. Reactive Streams
  2. python3 isinstance 类型判断函数
  3. python os.system 不打印_Python初体验之我爱你
  4. WSL(windows subsystem for linux)安装错误:安装过程中遇到错误,但可以继续安装。组件: ‘WSL 内核‘ 错误代码: 0x80072f78解决方法
  5. Shell脚本大量示例
  6. 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型...
  7. 数组求和forEach方法
  8. mysql 5.6 emoji_让MySQL 5.6支持Emoji表情
  9. 纳米丸穿透癌细胞(癌症)
  10. kvm虚拟化管理平台WebVirtMgr部署-完整记录(安装Windows虚拟机)-(4)
  11. opencv历史代码下载
  12. 深度学习——RESCAN
  13. 禁止搜狗拼音输入法自动更新
  14. Android应用程序四大组件分别是什么?各个组件所起到的作用是什么?
  15. c语言fprintf报错,C语言中printf,sprintf和fprintf的区别是什么
  16. oracle查询时间段差,关于oracle数据库中进行查询的时候出现效率特别差的一种情况...
  17. so easy 的 Vue3.0自定义指令(也搜一贼)
  18. Python 内置函数详解,进阶必备
  19. MAC 启动jar失败 显示 Unable to access jarfile xxx.jar
  20. python-恺撒密码 I

热门文章

  1. 爬虫提取非结构化数据
  2. No operations allowed after connection closed--转
  3. jms在jboss上的简单应用
  4. 【数据挖掘】数据挖掘简介
  5. 每天最少编码1000行
  6. 揭秘硅谷进化历程:机遇无穷 成功需付出更高代价
  7. 开源是互联网发展的核动力
  8. C语言文件读写(4)-判断文件是否结束
  9. 小程序onload_小程序生命周期-基础篇
  10. windows启动管理器_win7系统任务管理器的五种打开方式,很实用,学习一下