VS2010 调用 Matlab2011a
2013-11-01 09:23
357 查看
1、VS2010建立win32 console application,选择Empty
project,添加C源文件。
2、右键项目:
在属性->
VC++目录->包含目录下加上:
…\Program Files\MATLAB\R2011a\extern\include
在属性->
VC++目录->库目录下加上:
…\Program Files\MATLAB\R2011a\extern\lib\win32\microsoft
3、引用库文件,在代码中添加:
#pragma comment(lib, "libmx.lib")
#pragma comment(lib, "libmat.lib")
#pragma comment(lib, "libeng.lib")
也可以在Project->Properties...选择Configuration
Properties下的Linker->Input,在Additional
Dependencies栏目中输入项目需要引用matlab的的lib文件库。
例如:libeng.lib;libmx.lib;libmex.lib等。不过我倾向于前者,这样在发布源码的同时,
就尽最大可能地保证能够编译,而不用其他人学习的时候再去设置。
4、加载matlab引擎 :
在代码中添加 #include "engine.h"
5、如果编译通过,但提示运行缺少dll的问题,需要在我的电脑->属性->高级->环境变量->系统变量下的path中加入…\Program
Files
\MATLAB\R2011a\bin\win32的路径,然后重新启动VS,打开工程运行即可。
6、附录代码
#include "engine.h"
#include <stdio.h>
#pragma comment(lib, "libmx.lib")
#pragma comment(lib, "libmat.lib")
#pragma comment(lib, "libeng.lib")
void main()
{
Engine *ep; //定义引擎指针
int status=0;
ep=engOpen(NULL);
if (ep==(Engine *)NULL)
{
printf("错误,无法打开引擎\n");
exit(-1);
//退出程序
}
engEvalString(ep,"mesh(peaks);");
getchar();
status=engClose(ep);
}
转发至微博
转发至微博
project,添加C源文件。
2、右键项目:
在属性->
VC++目录->包含目录下加上:
…\Program Files\MATLAB\R2011a\extern\include
在属性->
VC++目录->库目录下加上:
…\Program Files\MATLAB\R2011a\extern\lib\win32\microsoft
3、引用库文件,在代码中添加:
#pragma comment(lib, "libmx.lib")
#pragma comment(lib, "libmat.lib")
#pragma comment(lib, "libeng.lib")
也可以在Project->Properties...选择Configuration
Properties下的Linker->Input,在Additional
Dependencies栏目中输入项目需要引用matlab的的lib文件库。
例如:libeng.lib;libmx.lib;libmex.lib等。不过我倾向于前者,这样在发布源码的同时,
就尽最大可能地保证能够编译,而不用其他人学习的时候再去设置。
4、加载matlab引擎 :
在代码中添加 #include "engine.h"
5、如果编译通过,但提示运行缺少dll的问题,需要在我的电脑->属性->高级->环境变量->系统变量下的path中加入…\Program
Files
\MATLAB\R2011a\bin\win32的路径,然后重新启动VS,打开工程运行即可。
6、附录代码
#include "engine.h"
#include <stdio.h>
#pragma comment(lib, "libmx.lib")
#pragma comment(lib, "libmat.lib")
#pragma comment(lib, "libeng.lib")
void main()
{
Engine *ep; //定义引擎指针
int status=0;
ep=engOpen(NULL);
if (ep==(Engine *)NULL)
{
printf("错误,无法打开引擎\n");
exit(-1);
//退出程序
}
engEvalString(ep,"mesh(peaks);");
getchar();
status=engClose(ep);
}
转发至微博
转发至微博
相关文章推荐
- WIN8.1下MSVC2013调用MATLAB engin…
- WIN8.1下Qt调用MATLAB engine
- VS2010 编码问题 不能将…
- 在Matlab中调用C/C++程序<一>
- QTP&nbsp;Action级别的参数调用
- VC和Matlab混合编程之调用Engine引擎方式<一>
- 【转】Fedora 下TeXLive 2011的安…
- matlab classify 线性判别分析函数
- matlab set函数 句柄操作函数
- matlab 坐标变换函数
- matlab interp 各种插值函数
- matlab&nbsp;函数meshgrid的用法
- 安装VS2010&nbsp;Service&nbsp;Pac…
- matlab&nbsp;图像处理的几个例子[…
- matlab 默认输出格式化
- 第2章第3节 ARM7芯片的函数调用标…
- javascript 动态调用方法和传参数
- 使用SAP memory 调用标…
- Matlab 图像处理相关函数命…
- 详解&nbsp;Qt&nbsp;调用&nbsp;DLL功能函数