标题:预想和实验结果不一样,关于VB数据运算有没有内在的规定?知道的喷油来看看 ...
只看楼主
yugebaihua
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-5
结帖率:66.67%
已结贴  问题点数:20 回复次数:4 
预想和实验结果不一样,关于VB数据运算有没有内在的规定?知道的喷油来看看!
实验遇到了些问题  代码如下
Private Sub Command1_Click()
Print 25 + 255 '字节型加字节型 结果超出字节型 运行正常 显示280
Print 32760 + 7 '整形加字节型 结果在整形内 结果32767
Print 32760 + 8 '整形加字节型 结果不在在整形内 显示溢出
Print 7 + 2147483640 '正常
Print 8 + 2147483640 '不在长整形范围内 溢出
End Sub
  疑问 如果第三行 和 第五行是因为数据类型超出范围而溢出 ,那为什么第一个没有显示溢出(字节型范围是0-255),而正常运行!是不是VB对字节型的运算有内部的规定。
我对于第一行结果 想不太通,有没有人能解释一下?
搜索更多相关主题的帖子: 五行 
2011-05-24 17:09
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:10 
VB里,直接数的类型不包括 字节型吧。
整数,不是 整形,就是长整形
带小数,或数字超过的,就是 单精度浮点 或 双精度浮点 。

授人于鱼,不如授人于渔
早已停用QQ了
2011-05-24 17:56
yugebaihua
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-5
得分:0 
教材上写的 : 数据类型 字节型 ; 名称关键字Byte ; 类型符 无; 约定前缀 byt  ;占字节数1 取值范围0-255
2011-05-24 18:24
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:0 
类型类型,你可以使用 dim 等命令定义的数据类型。

如 dim a as byte
a=255
这时,a 只占一个字节,范围 是 0-255 ,超出范围就溢出。

而直接数,就例如 255 这个数,不是变量,在VB里,有一个默认的数据类型。
好像是 没超过 整形 范围的数,一律为整形,不出现 byte 类型。

授人于鱼,不如授人于渔
早已停用QQ了
2011-05-24 18:52
bczgvip
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:66
帖 子:1310
专家分:5312
注 册:2009-2-26
得分:10 
vb6里,整型常数视为16位整型。超出范围则是长整型。
嗯,有无符号就不用说了。
debug.print typename(255)
2011-05-24 19:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-340857-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.540250 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved