以64 bit win7下的matlab 2012a(64bit)和vs2010为例:[1]
 
在vs2010中新建一个C++控制台工程,添加依赖项:(请根据自己的matlab安装目录更改)[2]
 
 
1)、在include files中添加:
E:\matlab\2012a-launch\extern\include
 
2)、在library files中添加:
E:\matlab\2012a-launch\extern\lib\win64\microsoft
 
3)、在input中添加:
libmx.lib;libmex.lib;libeng.lib;
 
(注意:将vs2010的运行环境从 win32 改成 x64)
 
示例程序:
#include <iostream>
#include <cmath>
#include <string> #include <engine.h> using namespace std; int main(int argc, char** argv) {
Engine* m_pEngine;
m_pEngine = engOpen(NULL);
if( m_pEngine == NULL ) {
cout<<"error!"<<endl;
exit(-);
}
engEvalString(m_pEngine, "x=0:0.01:2*pi;");
engEvalString(m_pEngine, "y=sin(x);");
engEvalString(m_pEngine, "figure; plot(x,y,'g');"); system("pause");
engClose(m_pEngine); return ;
}

报错:

1)、无法解析的外部符号 _engClose,该符号在函数 _main 中被引用 。

解决:换到x64

2)、无法启动此程序,因为计算机中丢失libeng.dll。尝试重新安装该程序以解决此问题。[3]

解决:E:\Program Files\MATLAB\R2013a\bin\win64 加入系统环境变量

参考:

[1] fourfire.c++,matlab混合编程[EB/OL].[2014-03-11].http://blog.sina.com.cn/s/blog_8e6bfecf0100y5ba.html

[2]  justinlm.Visual Studio 2010 为C/C++添加外部库的方法[EB/OL].[2014-03-11]http://www.docin.com/p-156218299.html

[3] hwby199106wHow_to_use_Matlab_Engine_in_Visual_Studio[EB/OL].[2014-03-11].http://www.doc88.com/p-458271665677.html

c++ 调用matlab程序的更多相关文章

  1. C/C++程序通过动态链接库调用MATLAB程序

    C/C++程序通过动态链接库调用MATLAB程序 1 MATLAB编译器设置 需要设定对应的C++编译器才能编译.m文件生成可供C++调用的库文件. 在MATLAB命令行输入:mex –setup:然 ...

  2. [python][matlab]使用python调用matlab程序

    问题引入 在做实验的时候,需要用到python和matlab工具来进行不同的处理,比如在run神经网络的时候,需要使用pytorch框架得到网络的各个参数,在得到参数后需要使用matlab进行聚类规划 ...

  3. eclipse调试java调用matlab程序的7.17dll找不到的问题

    经过多次查找,这个问题本来很简单,在环境变量中CLASSPATH配置C:\MATLAB\R2012a\toolbox\javabuilder\jar\win64\javabuilder.jar 特别注 ...

  4. Python的扩展接口[3] -> Matlab引擎 -> 使用 Python 调用 Matlab 程序

    Python - Matlab 目录 Python-Matlab 引擎 Python-Matlab 数组 Python-Matlab 基本操作 Python-Matlab 调用 m 文件 Matlab ...

  5. Windows中使用 Python 调用 Matlab 程序

    https://ww2.mathworks.cn/help/matlab/matlab_external/system-and-configuration-requirements.html http ...

  6. MATLAB调用C程序、调试和LDPC译码

    MATLAB是一个很好用的工具.利用MATLAB脚本进行科学计算也特别方便快捷.但是代码存在较多循环时,MATLAB运行速度极慢.如果不想放弃MATLAB中大量方便使用的库,又希望代码能迅速快捷的运行 ...

  7. Matlab调用C程序

    Matlab调用C程序   复制来自https://blog.csdn.net/u010839382/article/details/42463237 Matlab是矩阵语言,如果运算可以用矩阵实现, ...

  8. Matlab调用C程序 分类: Matlab c/c++ 2015-01-06 19:18 464人阅读 评论(0) 收藏

    Matlab是矩阵语言,如果运算可以用矩阵实现,其运算速度非常快.但若运算中涉及到大量循环,Matlab的速度令人难以忍受的.当必须使用for循环且找不到对应的矩阵运算来等效时,可以将耗时长的函数用C ...

  9. 使用Java程序调用MatLab

    Java代码实现的计算难免会显得不够高效.而利用MATLAB写好相应的计算函数,然后打包成jar包供Java调用,在某些情况下会更加方便.或者有些时候会涉及到使用Java调用MatLab展现一些二维三 ...

随机推荐

  1. Android一些小技巧

    1:设置选中图片的背景颜色 this.gridviewToolbar = (GridView) super.findViewById(R.id.gridviewbar); this.gridviewT ...

  2. 【MyBatis】MyBatis之如何配置

    1,MyBatis简介 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis 使用简 ...

  3. mysql homedir迁移

    随着数据库的增长,innodb文件和日志文件会越来越大,如果是默认安装的mysql,这些文件一般是放在 /usr/lib/mysql 下面进行转移: 1,安全关闭mysql mysqladmin -u ...

  4. MongoDB学习笔记(6)--find

    MongoDB 查询文档 MongoDB 查询文档使用 find() 方法. find() 方法以非结构化的方式来显示所有文档. 语法 MongoDB 查询数据的语法格式如下: db.collecti ...

  5. php性能优化(一)压力測试工具篇

    ab使用 Apache附带的压力測试工具ab,很easy使用,而且全然能够摸你各种条件对Webserver发起測试请求.ab能够直接在Webserver本地发起測试请求.这对于须要了解server的处 ...

  6. php中array_merge合并数组详解

    如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引. 注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数 ...

  7. 《TCP/IP详解卷1:协议》读书笔记

    <TCP/IP详解卷1:协议>读书笔记 - QingLiXueShi - 博客园https://www.cnblogs.com/mengwang024/p/4425834.html < ...

  8. ElasticSearch 数据增删改实现

    前言 本文介绍 ElasticSearch 增加.删除.修改数据的使用示例.通过Restful 接口和 Python 实现.ES最新版本中有Delete By Query 和 Update By Qu ...

  9. java对存放实体的list进行排序

    java对存放实体的list进行排序: List<DistributionAgentsEntity> allAgents = new ArrayList<DistributionAg ...

  10. ansible 视频学习

    ansible 视频地址 https://ninghao.net/video/4040