vb编程中 Dim a As Double a = Sqr(500 * 500) 为什么会出现溢出错误啊
2个回答
展开全部
当赋值超出目标的限制时,就会发生溢出。此错误有以下的原因和解决方法:
赋值、计算或数据类型的结果的转换太大,以致于不能在变量类型所允许的范围内表示出来。 赋值给足够表示值的范围的类型的变量上。
给属性的赋值超过属性能接受的最大值。 确保赋值适合属性的范围。
试图在计算中使用一个数字,并且该数字被强制为一个整数,但是结果超过了整数的范围,例如: Dim x As Long
x = 2000 * 365 ' 错误: 溢出要解决这个问题,请按如下方式键入该数字:
Dim x As Long
x = CLng(2000) * 365
你的这个问题解决方法
Dim a As Double
a = Sqr(CLng(500) * 500)
赋值、计算或数据类型的结果的转换太大,以致于不能在变量类型所允许的范围内表示出来。 赋值给足够表示值的范围的类型的变量上。
给属性的赋值超过属性能接受的最大值。 确保赋值适合属性的范围。
试图在计算中使用一个数字,并且该数字被强制为一个整数,但是结果超过了整数的范围,例如: Dim x As Long
x = 2000 * 365 ' 错误: 溢出要解决这个问题,请按如下方式键入该数字:
Dim x As Long
x = CLng(2000) * 365
你的这个问题解决方法
Dim a As Double
a = Sqr(CLng(500) * 500)
追问
试图在计算中使用一个数字,并且该数字被强制为一个整数,但是结果超过了整数的范围。不理解以上内容,为什么说数字是被强制为一个整数呢??
但是问题还是解决了,非常感谢
展开全部
你自己用计算器开250000 的平方看看后面有多少位数。要处理下才行。
追问
开出来就等于500啊???
追答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询