Foxtable(狐表)用户栏目专家坐堂 → 算法溢出


  共有3510人关注过本帖树形打印复制链接

主题:算法溢出

帅哥哟,离线,有人找我吗?
刘林
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
算法溢出  发帖心情 Post By:2021/7/2 7:02:00 [只看该作者]

dim ks as integer
 Dim kls As DataRow = DataTables("成绩").Find(filter)
    If kls Is Nothing
        messagebox.show(tb.Current("考号"))
        kh = val(tb.Current("考号"))
        messagebox.show("问题0.24")
        Dim nj As String = tb.current("年级")
        messagebox.show("问题0.25")

原来好好的代码,现在出现  kh = val(tb.Current("考号")) 到这句时出现算法溢出,考号为字符字段。
请问老师是什么情况?谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/2 8:38:00 [只看该作者]

val的结果是双精度类型,有效数字为15位,值范围大约是:-1.79E+308 ~ +1.79E+308。应该是考号值超出了这个范围。

如果不需要用来做四则计算等数学功能的数据,建议还是使用字符串,没有必要使用数值型处理

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2021/7/3 10:22:00 [只看该作者]

现在就是要进行数值处理,除了val外,还有什么方式将数字型字符转成整型数据?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/3 10:54:00 [只看该作者]

改为long
dim ks as long =  clng(tb.Current("考号"))

我想象不出来,考号居然要做加减乘除运算?还不如直接把考号列设置为整数列
[此贴子已经被作者于2021/7/3 10:54:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2021/7/3 11:16:00 [只看该作者]

老师,有这种情况,学校已打印了所有考号信息表,坐位号等,还没考试前突然转来一学生要参加考试,就要追加一个学生报名信息,为不动其他已打表格,就追加到最后,由于前面数据结构没有想到做成整数,所有就存在上面的问题,现在改为clng就可以了,但有点不理解的是为什么原来没这个问题

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/3 11:43:00 [只看该作者]

之前的考号没有超出范围

我理解考号应该是和编号一类的东西,无法理解要用来做加减乘除运算

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2021/7/3 12:07:00 [只看该作者]

因为表的最追加一个,在最大考号上增加1作为追加的学生的考号
[此贴子已经被作者于2021/7/3 12:07:33编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/3 14:16:00 [只看该作者]

灵活一点,比如获取后8位+1,和系统编号生成规则一样

 回到顶部