Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2008-11-08
年龄: 36
帖子: 3
声望力: 0 ![]() |
![]()
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操作有问题? |
![]() |
![]() |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
[资料]关于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 |