㈠ asp“800a0009 下标越界", 请问如何解决谢谢
这是由于传递过来的参数cs中不含有空格(或者根本就是空字符串),这样的话用split分割出来的数组customer的元素个数就会不足2个,因此customer(1)就会报“下标越界”了(如果是空字符串则customer(0)都会报错)。至于为什么会这样,就要你自己去排查了。
要想防止这样的错误,可以这样:
<%
ifinstr(request("cs"),"")>0then
customer=split(request("cs"),"")
customer1=customer(0)
customer2=customer(1)
FirstWord=left(customer1,1)
SecondWord=left(customer2,1)
Response.WriteFirstWord&SecondWord
endif
%>
㈡ vba输入代码重命名工作薄时显示“下标越界”,执行“显示当前工作表”时显示“编译错误,缺少结束语句”
首先:
Worksheets("sheet8").name="销售日报8" (显示下标越界)
这个错误是你的表格中sheet8的名字已经改成别的了,系统找不到。
Worksheets ("sheet2") .Visible = Ture.(“编译错误,缺少结束语句”)
这个错误是你的True后面多了个句号"."。
改成
Worksheets ("sheet2") .Visible = Ture
即可
㈢ C语言数组下标越界问题
C++中,并不会自动检查下标越界问题。
第一个程序中,a[10]=a[9],改变了不属于数组空间的内存单元。这个错误不会在编译和连接中反应出来,而是会一直运行下去,知道出现结果不正确。严重时可能导致死机。
第二个程序也是同样道理,数组a只申请了三个整形的内存空间,越界的部分修改了内存中原来的数据。不过在这里编译会报错。
要保证不破坏其他存储空间中的数据只能说自己注意了。
㈣ 下标越界检查关与c语言
就是指数组的索引值([]中的数字)超过了所定义数组的元素个数。
比如:
定义有
int a[3] = {0, 1 ,2};
则所定义的数组的元素个数就为3,由于C语言的数组索引(其实也就是你所说的下标)是从0开始计数的,所以就有
a[0]=0;
a[1]=1;
a[2]=2;
那么你让下标为3,就属于下标越界了。
a[3]=? //a[3]的值不可控制
给a[3]赋值,危险!
当然还有这样的越界a[-1],a[-2],....
看起来有点怪,但这种越界确实也会发生!特别是用变量作为数组下标时。
然而C语言并不会对下标越界进行检查(为了效率),所以编译时编译器并不会指出这种错误,可是若对如a[3]这样下标越界的数据进行修改,则可能使程序运行时产生异常甚至导致程序无法继续运行而退出!
㈤ Excel VBA 编译出现错误'9' 下标越界。求问题所在!谢谢!
Sub 销售()
Dim l As Long
Dim i As Long
Dim PSW As String
l = Sheet2.Range("C65536").End(xlUp).Row
Dim Arr1(), Arr2()
ReDim Preserve Arr1(1 To l)
ReDim Preserve Arr2(1 To l)
Arr1 = Sheet2.Range("c2:c" & l).Value
Arr2 = Sheet2.Range("d2:d" & l).Value
For i = 1 To l
If 销售登录.Value = Arr1(i, 1) Then
PSW = Arr2(i, 1)
End If
Next
End Sub
㈥ c语言的数组下标越界问题
c++中,并不会自动检查下标越界问题。
第一个程序中,a[10]=a[9],改变了不属于数组空间的内存单元。这个错误不会在编译和连接中反应出来,而是会一直运行下去,知道出现结果不正确。严重时可能导致死机。
第二个程序也是同样道理,数组a只申请了三个整形的内存空间,越界的部分修改了内存中原来的数据。不过在这里编译会报错。
要保证不破坏其他存储空间中的数据只能说自己注意了。
㈦ asp运行后提示下标越界请指点!
ASP不提供直接的可变长数组,你必须指定一个具体的数据下标如:DIM ARRAY(3)才行,代码如下:
注:下面的代码已经运行通过,没有任何问题
<%
dim array(3) '这样定义才行,如果你等会要再改变数组的元素个数,可用 redim语句。
array(0)="jeff"
array(1)="zhu"
array(2)="male"
'array=array("jeff","zhu","male") 这句也是不对的,没这种语法。
Session("info")=array
Response.write Session("info")(0) &"-"
Response.write Session("info")(1) &"-"
Response.write Session("info")(2) &"<br>"
%>
<hr>
<%
array(0)="jun"
array(1)="li"
array(2)="female"
Session("info")=array
Response.write Session("info")(0) & "-"
Response.write Session("info")(1) & "-"
Response.write Session("info")(2) & "<br>"
%>
㈧ c语言二维数组下标越界
在C语言中定义了数组以后,对数组元素的各种访问,C语言编译系统都是不做下标范围检查的,但是如果编程着自己疏于检查而使下标越界使用的话,就会造成意想不到的错误,造成的结果也是不可预料的。所以编程应当绝对避免越界操作数组。
㈨ 数组的下标越界可在编译哪个阶段发现
1、运行的时候,这个属于异常。
2、直接在开始编译的时候,这个属于错误了。
数组下标越界是一个程序初学者最容易犯的错误。
以一个简单的一维数组为例:
int a[10];这是一个整型的数组a,有10个元素:a[0]-a[9],因为正确的下标应该是从0开始,到9结束,与生活习惯中的1-10不一样,于是产生一个a[10]的错误,即数组下标越界。
c和c++语言中数组下标越界,编译器是不会检查出错误的,但是实际上后果可能会很严重,比如程序崩溃等,所以在日常的编程中,程序员应当养成良好的编程习惯,避免这样的错误发生。
若编辑网页时提示“数组下标越界”,除检查下上述问题外,再检查下文件中变量名称是否一致,很多时候是变量名称不一致所致
使用的角标大于等于数组的长度或为负数!