电脑开机后就出现:数组成员引用下标超出定义范围,怎么解决?

如题所述

1,原因:因为取出的数组成员不存在,假设要取的数组只有2个成员,取了第3个成员,那样肯定会提示这种错误的。
2,一般的易语言程序员会在用正则表达式、分割文本,从网络中获取文本进行分割时出现数组成员引用下标超出定义范围。
3,防范方法很简单,就是在取数组成员的时候先判断一下数组成员数是否正常。
需要用到的命令是,取数组成员数(),易语言中有该函数的详细说明。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-21
你使用这个数组的时候 使用循环或者是其他的东西 跟他制定的元素下标 超出了它的数组最大长度

不知道你用的那个编程语言 所以只能这样说了 还有 注意下 数组的元素下标是从0开始的
第2个回答  2016-08-30
为什么会出现这种错误?
因为你取出的数组成员不存在,假设你要取的数组只有2个成员,你取了第3个成员,那样肯定会提示这种错误的,例如下图的易语言源码:

上面的是初级错误,新手容易犯。
一般的易语言程序员会在用正则表达式、分割文本,从网络中获取文本进行分割时出现数组成员引用下标超出定义范围。
如何防范数组成员引用下标超出定义范围导致程序意外退出呢?
方法很简单,就是在取数组成员的时候先判断一下数组成员数是否正常。
你需要用到的命令是,取数组成员数(),易语言中有该函数的详细说明!
举个例子:
我们想采集某个网站的内容,这个网站内容包含的有[标题][作者][发布时间][内容]
我们用正则表达式采集的时候发现程序提示数组成员引用下标超出定义范围,
那么我们就看看是再哪个页面出现问题的,找到之后发现这篇文章居然没有作者,应该是网站管理员疏忽忘记添加了。这时我们用正则表示取出的数组成员数只有3个,我们再取第4个的时候就会出错。
解决方法是在我们要取正则表达式获取的内容之前先判断一下取数组成员数是否等于4,如果等于4我们就直接取内容,如果不等于4那么我们只取3个内容,自己把作者补起来,或者直接跳过该页面去取正常格式的网站内容。
第3个回答  2013-10-21
重新安装
相似回答