变量越界问题

yc102 2008-04-08 09:14:27
在一个子程序中
dim p as long
p=256*256 或
p=255*155
运行不通过,出错
p=1234356或
p=155*155
运行通过
谁能帮我分析一下,哪里出现错误,非常感谢!
...全文
32 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zdingyun 2008-04-08

Private Sub Command1_Click()
Dim p As Long
Dim a As Long
Dim b As Long
a = 256
b = 256
p = a * b
Print p
End Sub
回复
zjkqxjsxb 2008-04-08
通过测试发现两个整数相成时其结果不能超出65536的一半,即16进制有符号数范围0000-FFFF(-32768~32767),若其中某一数字超出此范围则自动转化到更大表示范围的数据类型.
如:
32767*1 ok
32767*2 X
32768*2 ok
256*127 ok 32512
256*128 X 32768
回复
相关推荐
发帖
VB基础类
创建于2007-09-28

7491

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2008-04-08 09:14
社区公告
暂无公告