VBS动态数组的问题
动态数组的问题,为什么不能这样用。i=0dimMyArray()doa=inputbox("循环直到输入4为止")MyArray(i)=ai=i+1loopuntila=...
动态数组的问题,为什么不能这样用。
i=0
dim MyArray()
do
a=inputbox ("循环直到输入4为止")
MyArray(i)=a
i=i+1
loop until a="4"
ReDim Preserve MyArray(i)
msgbox Array(i)
可能我理解的动态数组不对?
把不符合要求的数据存放在动态数组里,每次运行脚本不合格的数量都不一定,想用动态数组存放这些数据。
必须先redim然后才能给数组赋值对吧,
这段什么意思:
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
MsgBox nStr 展开
i=0
dim MyArray()
do
a=inputbox ("循环直到输入4为止")
MyArray(i)=a
i=i+1
loop until a="4"
ReDim Preserve MyArray(i)
msgbox Array(i)
可能我理解的动态数组不对?
把不符合要求的数据存放在动态数组里,每次运行脚本不合格的数量都不一定,想用动态数组存放这些数据。
必须先redim然后才能给数组赋值对吧,
这段什么意思:
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
MsgBox nStr 展开
展开全部
i = 0: nStr = ""
Dim MyArray()
Do
a = InputBox("循环直到输入4为止")
ReDim Preserve MyArray(i)
MyArray(i) = a
i = i + 1
Loop Until a = "4"
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
MsgBox nStr
补充:--------------------------------------
不一定要 redim 后才能给数组赋值
Dim MyArray(5)
MyArray(0)=455
MyArray(1)=500
.......
因为这时数组中已有元素 0 到 5 号
下面的用法就必须 redim 后才能给数组赋值
dim MyArray()'定义动态数组,此时数组中一个元素都没有
ReDim Preserve MyArray(3)'重定义数组的元素 为 0 到 3 号
MyArray(0)=455
MyArray(1)=500
MyArray(2)=2
MyArray(3)=78
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
表示:将数组的所有元素用字符串形式连在一起,用“,”分隔,便于显示。
UBound(MyArray) 表示数组元素的最大序号。参见:
Dim MyArray()
Do
a = InputBox("循环直到输入4为止")
ReDim Preserve MyArray(i)
MyArray(i) = a
i = i + 1
Loop Until a = "4"
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
MsgBox nStr
补充:--------------------------------------
不一定要 redim 后才能给数组赋值
Dim MyArray(5)
MyArray(0)=455
MyArray(1)=500
.......
因为这时数组中已有元素 0 到 5 号
下面的用法就必须 redim 后才能给数组赋值
dim MyArray()'定义动态数组,此时数组中一个元素都没有
ReDim Preserve MyArray(3)'重定义数组的元素 为 0 到 3 号
MyArray(0)=455
MyArray(1)=500
MyArray(2)=2
MyArray(3)=78
For i = 0 To UBound(MyArray)
nStr = nStr & MyArray(i) & ","
Next
表示:将数组的所有元素用字符串形式连在一起,用“,”分隔,便于显示。
UBound(MyArray) 表示数组元素的最大序号。参见:
参考资料: http://zhidao.baidu.com/question/99837477.html
展开全部
呵呵,没看出来你是怎么理解动态数组的,反正不对。给你改了改,不知是否是你想要的效果。
================
i=0
dim MyArray()
do
a=inputbox ("循环直到输入4为止")
if a="4" then exit do
redim preserve myarray(i)
myarray(i)=a
i=i+1
loop
msgbox join(myarray,",")
================
i=0
dim MyArray()
do
a=inputbox ("循环直到输入4为止")
if a="4" then exit do
redim preserve myarray(i)
myarray(i)=a
i=i+1
loop
msgbox join(myarray,",")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
i=0
你的程序改为下面这样就行了
dim MyArray()
do
ReDim Preserve MyArray(i)
a=inputbox ("循环直到输入4为止")
MyArray(i)=a
i=i+1
loop until a="4"
msgbox Array(i)
你的程序改为下面这样就行了
dim MyArray()
do
ReDim Preserve MyArray(i)
a=inputbox ("循环直到输入4为止")
MyArray(i)=a
i=i+1
loop until a="4"
msgbox Array(i)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询