注册 登录
编程论坛 新人交流区

求助一道题

benzchen 发布于 2007-09-28 23:01, 849 次点击
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Long
For a = 0 To 10000
b = Len(a)
c = a * a
If a = Right(c, b) Then
Print a
End If
Next
End Sub


各位帮忙看一下,为什么运行后,出现c=a*a 溢出呢?
10 回复
#2
xuemiyi2007-09-28 23:05
高手帮忙一下吧
#3
gytxzyf2007-09-29 10:16

你输出一下long类型的最大值看看;不出意料的话,应该是溢出了

#4
purana2007-09-29 10:47
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Long
For a = 0 To 10000
b = Len(a)
c = CLng(a) * a
If a = Right(c, b) Then
Print a
End If
Next
End Sub
#5
meteor572007-09-29 10:55
感觉应该不会溢出的呀,看看原程序的其它部分

long从-2,147,483,648到2,147,483,647

先看看其它地方有没有问题,没问题的可以试试改小a的值再看看.
#6
wangguan04112007-09-29 17:10
??????????????
#7
界翔小屋2007-09-29 17:22
回复:(meteor57)感觉应该不会溢出的呀,看看原程序的...
学习!
#8
keloy2007-09-29 18:12
你输入了多大数据????
#9
guotufu2007-09-29 18:47
??????????????????????
#10
guotufu2007-09-29 18:47
看一下书呀!!!!!!!!
#11
guotufu2007-09-29 18:49
先看书,再问人嘛,呵呵
1