马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
打算是把vc里的矩阵bus,line各自按列分别放到个大的数组BigBusArray,BigLineArray里,然后放到mxArray里,作为参数传到matlab里。
double Bus[19][40];//bus矩阵
double Line[12][40];//line矩阵
double BigBusArray[800];
double BigLineArray[800];//
以上开的几个数组都是有富余的,但是我是算准只要25*19,和24*12的。
mxArray *BUS = NULL,*LINE = NULL;
BUS = mxCreateDoubleMatrix(25, 19, mxREAL);
memcpy((void *)mxGetPr(BUS), (void *)BigBusArray,25*19);
LINE = mxCreateDoubleMatrix(24, 12, mxREAL);
memcpy((void *)mxGetPr(LINE), (void *)BigLineArray, 24*12);
engPutVariable(ep, "BUS", BUS);
engPutVariable(ep, "LINE", LINE);
engEvalString(ep, "cd('C:/MATLAB6p5/work')");
engEvalString(ep, "mainprogram(BUS,LINE)");
我测试的时候,BigBusArray,BigLineArray,BUS,LINE,在没有传到matlab的时候是正确的,但是传进去以后,测试BUS,LINE 对应的行列,发现有些位上的数不对,而且程序进行不下去,不知道什么回事。。。盼高手指点。。。 |