山东省文化厅新领导:下面的代码调试的时候提示下标越界?

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/09 03:46:00
下面的代码调试的时候提示下标越界
怎么回事?

set rs=server.CreateObject("adodb.recordset")
rs.Open "select * from musiclist",conn,2,3
dim a(),b(),c(),r,s
for r=0 to 3
a(r)=trim(request.form("songname"&r))
b(r)=trim(request.form("singer"&r))
c(r)=trim(request.form("special"&r))
Next
else
for s=0 to 3
rs.addnew
rs("songname")=a(s)
rs("singer")=b(s)
rs("special")=c(s)
rs("adddate")=now()
rs.update
next
rs.close
set rs=nothing

不能用dim a(),b(),c()来定义数组,这样默认数组的下标上限是0,也就是只能使用a(0),b(0),c(0)。这样你调用a(1)的时候就会下标越界,你要这样定义:

dim a(3),b(3),c(3)

如果你不确定下标可能的上限,就把它设大一点,比如100甚至1000。