以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. java中enum的应用

    package com.demo; public enum TestEnum { A("hello"), B("world"); private String ...

  2. thinkphp日志分析

    #!/usr/bin/perl -w use strict; use warnings; use Tie::File; #### # Thinkphp日志分析 # 日志基本格式:{$now} &quo ...

  3. shell value too great for base

    今天同步文件的时候发现了这个问题: 原因是: tar_file_month=`date +%m` rsync -auzq --exclude=))"]" 当月是8月,tar_fil ...

  4. OPENSSL编程起步

    原文链接: http://blog.csdn.net/itmes/article/details/7711076 WINDOWS平台下OPENSSL的编译和安装使用 OPENSSL是开放源代码的,可以 ...

  5. C#操作Sqlite快速入门及相关工具收集

    Sqlite不需要安装即可使用.Sqlite是不是那个System.Data.SQLite.DLL临时创建了数据库引擎? 1.新建一个WinForm项目,引用System.Data.SQLite.DL ...

  6. JAVA中使用HTTP 1.1提高基于AXIS 1.4的web service的性能

    HTTP 1.1会在第一次连接的时候进行认证, 而在一定时间内保持连接而不用重新验证. 一般情形下,每个web service请求都会在web service服务端验证, 而验证会消耗很多时间, 因此 ...

  7. MySQL -- 内存使用监控详解

    问题: 1.我们怎么确定MySQL的各个部分分别使用了多少内存? 2.当有MySQL由于内存泄露引起OOM时.我们怎么提前发现? 怎么监控MySQL内存使用: 答案是通过performance_sch ...

  8. gRPC之Node Quick Start

    在node环境下我们使用一个小例子作为引导: 在开始之前请确认如下: 1.node:版本在0.12以上 下载这个例子 为了更好地开始这个例子,你需要在本地对这个例子代码做一个备份.下载这个例子的代码从 ...

  9. 使用mysql innodb 使用5.7的json类型遇到的坑和解决办法

    ---------------------------------------------- #查询JSON的某个字段 select data -> '$.Host' from temp #创建 ...

  10. 如何在Visual Studio VS中定义多项目模板

    https://msdn.microsoft.com/en-us/library/ms185308.aspx Multi-project templates act as containers for ...