读书人

VC6.0调MATLAB输出2维数组赋值有关问题

发布时间: 2013-10-10 14:14:51 作者: rapoo

VC6.0调MATLAB输出2维数组赋值问题
mwArray 结构

mwArray Uu(1000,4, mxDOUBLE_CLASS, mxCOMPLEX);
输出 Uu
float Uux[4000];

Uu.GetData(Uux,4000);


Uu.Real().GetData(Uux,4000);
结果Uux都只能 得到第一列的数值,求原因 谢谢

[解决办法]
你要获取其它列的可以这样:
mwArray a=Uu(col);
再调用a.GetData

引用:
mwArray 结构

mwArray Uu(1000,4, mxDOUBLE_CLASS, mxCOMPLEX);
输出 Uu
float Uux[4000];

Uu.GetData(Uux,4000);


Uu.Real().GetData(Uux,4000);
结果Uux都只能 得到第一列的数值,求原因 谢谢

[解决办法]
不要做A语言代码修改为B语言代码的无用功。
也不要做用A语言代码直接调用B语言代码库这样复杂、这样容易出错的傻事。
只需让A、B语言代码的输入输出重定向到文本文件,或修改A、B语言代码让其通过文本文件输入输出。
即可很方便地让A、B两种语言之间协调工作。

[解决办法]
引用:
问题已解决
用get(i,i,j);
遍历整个矩阵得到所有数据

但是原理还是不明白,希望有大神可以解惑

a=Uu(1),你的数组类没有实现“=”吧!默认的不能满足你的要求啊 所以得一个一个的自己赋值

读书人网 >C++

热点推荐