易语言数组成员引用下标超出定义范围!

兄弟们帮我讲解下,易语言数组成员引用下标超出定义范围!?

易语言数组成员引用下标超出定义范围,不知道怎么修复,是在网某论坛上下载的源码,但在实际使用时发现出错,如截图,不知道怎么弄,有没有会的?帮忙看一下
最新回答
你是我的避风港

2024-10-17 11:22:00

这个仅仅看代码是看不出的,因为是否出错还和数据有关,而你这没有数据

例如:


这里如果+号部分出错,可能就是分割点阵具体信息[3]这个变量分割后没有四个部分。所以这种错误需要调试,别人是没法看代码帮你改的

追问
调试输出后,就是下面这个
数组:1{“12”}
追答
数组:1{“12”}
这是啥?
一身傲气怎能服输

2024-10-17 13:42:34

错误原因:你的”大体图片内容“这个字节集估计是空的(没有获取到),或者中间没有中文冒号这个字节集,这样的话分割之后肯定就不成为数组了对吧,也就是数组成员数为0,而你下一行代码直接使用了 分割内容[1],引用了一个不存在的数组元素,肯定会错误。


改进方法:

  1. 在使用分割内容[1]之前,先检查数组的成员数,用命令“取数组成员数()”即可,然后判断它的值是不是>0,然后再引用数组元素。(以后编程使用数组前都要检查,这样不容易出BUG。)

  2. 如果你的大体图片内容肯定是含有中文冒号这个字节集的...那就是你之前的取回数据那里出了故障,取回的数据是空的..检查检查。但是也要看看方法1中,最好写一个异常处理,否则一旦崩溃程序就挂了。


全手打。望采纳!