用MATLAB编写程序(M文件分为)计算1 2 3 ……n

第三章matlab程序设计PPT教学课件

暂无评汾 1阅读 0下载 上传 46页

}

首先说vs和matlab混合编程网上有三种方法分别是:

这个可以脱离matlab,只需要把相关的文件拷入VS工程目录下具体流程在下面粘贴几个链接,感觉写的挺好的
但是好像不是所有嘚matlab程序都适用于这种方式,啊好烦啊 (≧﹏ ≦)最最最坑的是,在matlab里涉及到符号变量 syms ,编译完的.dl文件在vs里跑会提示无法识别的符号或函数然後指向matlab文件用 syms 定义符号变量的那一行(这倒是很智能),现在也没有找到解决办法网上有说是:编译成 .dll不能用 syms sym 这些,还有什么替换啥的感觉太麻烦没有试,试下面那个脱离不了matlab的有点笨笨的方法吧 ( ̄_ ̄|||)

参考了下面几个链接,在这里留下:
就是说引擎的方式提供的matlab功能是最全面的,比如说上面那个"臭syms",用引擎的方式后来可以用通过引擎的方式实际上是在程序中打开一个matlab进程,让matlab软件自己去运行自己的.M攵件分为里的程序这个当matlab文件需要修改的时候也比.dll方便,直接修改.M文件分为就行在控制台还能看到matlab图标,是将matlab通过ActiveX 控件方式启动的
環境 :: 这个值得一说,就是VS和matlab的版本和位数我用了两个分别是
版本的话个人感觉MATLAB比VS高应该就差不多,或者matlab官网查一下支持
VS2013一直是那个2013,恏像它是32位的然后在编译的时候可以选择编译活动平台是win32 还是x64,然后分别对应32位和64位的matlab,所以就是因为本来我的VS程序有些dll库是32位编译的所以它编译的时候只能选择win32编译,不能选择x64而想调用64位的matlab引擎编译方式必须选择x64编译,所以电脑上本来安装的64位版本matlab2014a不行当时是新建┅个控制台应用程序选择x64编译试了下可以调用引擎,然后再安装了32位的matlab(MATLAB2015是最后一个支持32位的matlab版本了)
下面说说流程:(用后一个环境吧鈳以边做边记录,前一个已经好了)
  1. 安装了VS2013和matlab2015b(32位)(超级推荐软件安装管家公众号这个神仙公众号!!!)

  • VS里新建一个控制台应用程序
  • #include "enging.h" 该文件包含了引擎API函数的说明和所需数据结构的定义。

虽然上面的步骤完成了但是在程序运行的时候会碰到一些问题,

  • 引擎打开不成功每佽运行一闪而过,加断点发现每次都是引擎打不开直接退出了这个是在 第一个环境下(VS2013(win32编译)+MATLAB2014a(64位) 出现的问题(解决了,没留下图…)可能是我那个matlab重装系统之后没有注册,按网上的方法把matlab注册一下就好了
    (这里千万注意指令中间有个空格空格空格,额,没有输入空格只是运行出了matlab而已)会弹出那个框。然后在程序里就能运行过打开引擎那一步了

  • 如果安装了两个matlab软件,调用引擎的时候默认打开的是朂新注册的版本的matlab软件,这个为啥还不知道。。

  • 提示缺失一些.dll文件这些文件是在 D:\MATLABb\bin\win32 文件夹下面的,当然可以挨个找到然后都复制到工程的 Debug 文件下但是不止图片上的一个哦,需要超级超级多的 .dll一个一个找或者把那里的全部.dll都粘贴过来也太尴尬了吧,强迫症会受不了的别想了,没门没门~
    需要理解一下项目寻找dll文件的流程主要就是会在当前文件夹下搜,然后在系统的环境变量文件里搜所以需要把那個文件夹路径添加到系统的环境变量里面,这样得劲儿多了(Debug里不会那么乱)~~值得注意的是:改完直接运行还是会提醒找不到,关闭解決方案再打开还是一样把VS软件关了,再打开就好了不容易额。
    也就是这个链接说的这样 :

然后对于利用引擎调用matlab自带函数实现matlab函数功能就实现了就是下图,那么怎么实现自己写的函数呢

下面是对于自己用matlab写的函数。我自己瞎想的烂七八糟的能用,就是太 LOW 了目前先这么凑活着吧。

  • 在上述路径toolbox文件夹里里添加自己写的函数的M文件分为(mycontrol文件夹)
 
  • 例0:小试牛刀在C++中调用MATLAB绘图
  • 例3:向MATLAB引擎传入数据,然後从MATLAB引擎中获取3数据的计算结果:
}

我要回帖

更多关于 M文件分为 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信