You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何VB代码Dim l&: l = 1000 * 60会触发Overflow错误?

VB代码溢出错误原因及解决方法

错误原因

你这段代码里的Dim l&是把变量l声明为Long(长整型),但右边的计算式1000 * 60会先以VB默认的**Integer(整型)**来运算:

  • Integer类型的取值范围是 -32768 ~ 32767
  • 1000 * 60的结果是60000,已经远超Integer的最大值32767,所以在计算这个表达式时就直接触发了Overflow溢出错误,根本轮不到把结果赋值给Long型的l。

解决方法

只需要让计算式以Long型来运算就行,有两种简单方式:

  • 给其中一个常量加上Long型后缀&:
    l = 1000& * 60 '1 min
    ' 或者
    l = 1000 * 60& '1 min
    
  • 用CLng()显式转换其中一个值为Long型:
    l = CLng(1000) * 60 '1 min
    

内容的提问来源于stack exchange,提问作者tmighty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 01:45:36