以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 出错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=161701)

--  作者:sanny
--  发布时间:2021/3/27 13:53:00
--  [求助] 出错
老师

这是出什么问题了 ?以前没有出现过。




[此贴子已经被作者于2021/3/27 19:36:42编辑过]

--  作者:有点蓝
--  发布时间:2021/3/27 14:09:00
--  
提示很明显了,索引超出数组的范围。检查出错函数代码
--  作者:sanny
--  发布时间:2021/3/27 15:46:00
--  
可是这个函数代码 一直没有变更过,可能是什么原因 ?
--  作者:有点蓝
--  发布时间:2021/3/27 16:15:00
--  
函数没有变更过不代表没有问题。比如如果碰到特定的数据就会出错。例如下面代码,

dim s as string = "12345678"
msgbox(s.substring(7))

假设s变量的值是外部输入的,如果能够保证s的字符长度永远都大于7位,肯定就不会出错,但是如果某个时候用户可能手抽输入的值不够8位,比如
dim s as string = "123"
msgbox(s.substring(7))

这个代码肯定就出错了。

为什么你们总习惯纠结于代码没有变过就不能出错了呢,还有一些用户老是纠结“我的程序运行这么久都没有问题”,现在出问题了肯定是开发工具的锅。难道一个司机开了20年的车都没有出过事故,这个现象就能够保证往后就永远不会出事故了么?程序也是一样的,出现问题就按照解决问题的思路寻找可能出现的原因然后解决之...


--  作者:sanny
--  发布时间:2021/3/27 19:05:00
--  
谢谢
[此贴子已经被作者于2021/3/27 19:36:02编辑过]