![]() |
[求助]vb和matlab接口有关matlab程序调用vb数组的问题
程序如下:
Private Sub cmdTest_Click() Dim Data3(1 To 200, 1 To 5001) As Double Dim Data4(1 To 200, 1 To 5001) As Double Dim data(1 To 100, 1 To 1000) As Double Dim sng0 As Double Dim i As Integer Dim j As Integer '从文件中读取数据 'Open App.Path & "\data1.dat" For Input As #1 CommonDialog1.ShowOpen 'dblData = openCommonDialog1.FileName Open CommonDialog1.FileName For Input As #1 For i = 1 To 200 For j = 1 To 5001 Input #1, sng0 Data3(i, j) = sng0 Next j Next i Close #1 'Print Data3(1, 1) 'Open App.Path & "\data2.dat" For Input As #1 CommonDialog2.ShowOpen 'dblData = openCommonDialog1.FileName Open CommonDialog2.FileName For Input As #1 For i = 1 To 200 For j = 1 To 5001 Input #1, sng0 Data4(i, j) = sng0 Next j Next i Close #1 For i = 1 To 100 For j = 1 To 1000 data(i, j) = Data4(i, j) 'Print data1(i, j) Next j Next i For i = 1 To 10 For j = 1 To 10 Print data(i, j) Next j Next i '调用接口函数 'Call theMatlab.tttt1(Data3, Data4) Call theMatlab.ceshi5(data) 'txtPt.Text = Format(dblPt, "##,##0.000") 'txtQd.Text = Format(dblQd, "##,##0.000") 其中将Data3,Data4等数据传送到接口程序中时:提示:“类型不匹配”错误 就是说vb中导入的数据数组到matlab程序中时,数据类型不匹配: 请高手指点! |
你试试定义成 Variant类型的数据
|
回复: [求助]vb和matlab接口有关matlab程序调用vb数组的问题
我也碰到这个问题了!哪位能指点一下,这种赋值的具体操作方法啊!
|
回复: [求助]vb和matlab接口有关matlab程序调用vb数组的问题
LZ能不能告诉我在MATLAB中数组是怎么使用的,能把FUNCTION函数也传上来吗?谢谢
|
回复: [求助]vb和matlab接口有关matlab程序调用vb数组的问题
我也用到这个问题啊,数组不能正确调用,不过你那个肯定有问题,调用Call theMatlab.ceshi5(data)格式是(n,y1,y2..,x1,x2..),n申明输出变量的个数。
|
回复: [求助]vb和matlab接口有关matlab程序调用vb数组的问题
以这种形式进行,例如Call theceshiyong.ceshiyong2(4, b, c, d, e, a()) ,a()为输入得二维数组,matlab对a()数据的读取与其各维上角标无关,可以把a()看成一个表格,matlab按列读取按列赋值。注意a()所有会被调用元素都要赋值哦,否则会显示出错或者什么都不显示,但不进行m文件中运算。
|
所有时间均为北京时间。现在的时间是 09:48。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.