在vbscript中,关于数组声明使用的问题,懂的高手帮帮忙
<scriptlanguage=vbscript>Dimc(3)c=a()MsgBoxc(2)Functiona()Dimb(3)b(0)=1b(1)=2b(2)=3b(...
<script language=vbscript>
Dim c(3)
c=a()
MsgBox c(2)
Function a()
Dim b(3)
b(0)=1
b(1)=2
b(2)=3
b(3)=4
a=b
End function
</script> 以上这段代码中,如果去掉第一句,dim c(3),就可以成功运行,如果不去,就运行不了难道这句话有什么错吗?函数a的返回值是一个数组,我直接先定义一个有四个成员变量的数组,然后再通过函数a返赋给,难道这有什么不对吗?为什么加上了这句先定义数组的语句,程序就会有问题呢? 展开
Dim c(3)
c=a()
MsgBox c(2)
Function a()
Dim b(3)
b(0)=1
b(1)=2
b(2)=3
b(3)=4
a=b
End function
</script> 以上这段代码中,如果去掉第一句,dim c(3),就可以成功运行,如果不去,就运行不了难道这句话有什么错吗?函数a的返回值是一个数组,我直接先定义一个有四个成员变量的数组,然后再通过函数a返赋给,难道这有什么不对吗?为什么加上了这句先定义数组的语句,程序就会有问题呢? 展开
1个回答
2013-11-05
展开全部
当然不可以。
因为Dim c(3)是一个固定长度的数组,你却试图给它赋值一个未定长度的a。
因为VBScript允许边定义边使用,所以c=a()等于告诉解释器——我现在声明了一个长度未知的动态数组c
因为Dim c(3)是一个固定长度的数组,你却试图给它赋值一个未定长度的a。
因为VBScript允许边定义边使用,所以c=a()等于告诉解释器——我现在声明了一个长度未知的动态数组c
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询