首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

发现VB6.0的一个神奇的bug,该如何解决

2013-08-27 
发现VB6.0的一个神奇的bugDim i As SingleFor i 99999989 To 99999999Debug.Print iNext先猜猜什么结果?

发现VB6.0的一个神奇的bug

Dim i As Single
For i = 99999989 To 99999999
    Debug.Print i
Next

先猜猜什么结果?然后再运行。
[解决办法]
因为 9.999999E+7 = 99999990 就是i的起始.
i+1 = 99999991 ;但是因为是 singe型。最后四舍五入还是 99999990 ,所以一直print 9.999999E+7 
[解决办法]
应该是99999990 
single类型的范围为1.401298E-45 到3.402823E38 只能有7位的有效数

热点排行