Matlab7.0利用mcc与VC++编程实例(最简单的示例)

最简单的例子,找不到的源、库文件可以从/MATLAB701/extern/里面拷贝,已验证

1 、启动MATLAB7,新建m文件,输入:

function myfun(n)
t
= 0
:n;
y
=
sin(t);
plot(y);

保存文件为:myfun.m

2 、 在Matlab 的Command Window 下输入命令:mcc -B csglsharedlib:mylib myfun 生成动态链接库DLL。Matlab 会生成一系列文件, 其中mylib.h mylib.lib mylib.dll mylib.ctf是我们这里需要的。

3 、 在VC++中使用Matlab 生成的动态链接库( *.DLL)

以上面创建的 TestDllApp 工程为例。将mylib.h mylib.lib mylib.dll mylib.ctf文件拷贝至 TestDllApp 工程目录下并添加入工程。修改 TestDllApp.cpp 文件 :

//  TestDllApp.cpp : Defines the entry point for the console application.

//
#include  " stdafx.h "

#include 
< stdio.h >
#include 
" mylib.h "
#include 
" mclmcr.h "

int  opp( int  n);
void  main( int  argc,  char *
 argv[])
{
    mylibInitialize();
    
double  x = 64
;
    mxArray 
*
t;
    t
= mxCreateDoubleMatrix( 1 , 1
,mxREAL);
    memcpy(mxGetPr(t),
& x, sizeof ( double
));
    mlfMyfun(t);
    mxDestroyArray(t);
    mylibTerminate();
    printf(
" This is a test!/n "
);
    printf(
" %d/n " ,opp( 16
)); 
}

int  opp( int  n) {
    
return  n / 4 * 4 + 4
;
}

4 、 通过菜单工程/设置,打开工程设置属性页,进入Link页面,在Object/library modules编辑框中,添加文件名libmx.lib libmat.lib libeng.lib。

5 、编译运行程序。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值