Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-11-08, 19:01   #1
sueswang
初级会员
 
注册日期: 2008-11-08
年龄: 36
帖子: 3
声望力: 0
sueswang 正向着好的方向发展
默认 [求助]我用matlab生成的动态连接库编写求导程序出现错误,望有人指点

matlab程序如下
function f=qioudao(x)
f=diff(x);
生成动态链接库后在vc6.0编写windows控制程序台程序如下:
#include "iostream.h" // 输入输出头文件
#include "mclmcr.h" // mxArray类型声明
#include "qioudao.h" // DLL头文件
void display(const mxArray* in, const char* name);
int main()
{
// 初始化程序
if( !mclInitializeApplication(NULL,0) )
{
fprintf(stderr, "Could not initialize the application.\n");
exit(1);
}

// 初始化库
if (!qioudaoInitialize())
{
fprintf(stderr,"Could not initialize the library.\n");
exit(1);
}


mxArray *X;
mxArray *f=NULL;

X = mxCreateDoubleMatrix(1,1,mxREAL);

char fin[] = {"x"};

memcpy(mxGetPr(X),fin,sizeof(char));

mlfQioudao(1,&f,X);
display(f,"f");

mxDestroyArray(X);
mxDestroyArray(f);

qioudaoTerminate();
mclTerminateApplication();
return 0;
}
void display(const mxArray* in, const char* name)
{

double* data;
data = mxGetPr(in);


printf("%s = \n",name);


printf("%d\t",data);

}
但出现结果是f=0,而不是对f = 1
请问上面程序错在哪里?是不是对mwArray操作有问题?
sueswang 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[资料]关于MATLAB优化工具箱的介绍,比较实用的。 binro MATLAB论坛 11 2012-02-20 23:20
[求助]请求大侠解答简单问题 fenyun MATLAB论坛 1 2009-02-11 03:13
[分享]给新手的建议 guofeng0108 MATLAB论坛 0 2008-12-16 09:51
solve错在哪里?? 求助!!! ldd00 MATLAB论坛 4 2008-12-01 11:22
GM(1,1) lvlianggan MATLAB论坛 2 2008-11-07 22:52


所有时间均为北京时间。现在的时间是 17:06


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.