vb实时错误6的问题

代码如下dimaaslongxaslongx=24*60*60msg1$=输入时间msgtitle=时间换算a=inputbox(msg1$.msgtitle)print... 代码如下
dim a as long x as long
x=24*60*60
msg1$=输入时间
msgtitle=时间换算
a=inputbox(msg1$.msgtitle)
print a/x
请问哪错了?是赋值语句不能是长整形吗?
用说明符也没用!老实说实时错误6
展开
 我来答
是小白啊2k
推荐于2018-04-05 · TA获得超过2566个赞
知道小有建树答主
回答量:1183
采纳率:0%
帮助的人:1163万
展开全部
vb在计算24*60*60时,由于24,60都是integer型,所以其默认结果也按照integer型来处理,但这时结果已经超出了integer的范围,所以报错。
改成x = CLng(24) * 60 * 60这样就行了,因为有long型参数参与计算时,结果会默认转为long型。
百度网友39a11c129
2013-03-29 · 超过22用户采纳过TA的回答
知道答主
回答量:80
采纳率:100%
帮助的人:54万
展开全部
具体的我也不太清楚,我试了一下,也是这个问题。估计是右边式子超过了整形的长度,尽管左边定义的是长整形,但右边分配的空间只是整形,相对来说已经溢出,也自然无法复制给左边了。至于为什么右边只分配了一个整形的空间,我也不太清楚
补充:右边都是整形量,根据运算规则,整形与整形相乘得到的数据为整形,因此程序给右边式子分配的空间为整形。而数值结果已经超过了整形范围,故数据溢出了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chinaboyzyq
2013-03-29 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:3260万
展开全部
溢出了
x=clng(24)*60*60
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bdb9803
2013-03-29 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:53%
帮助的人:1亿
展开全部
Dim a As Long, x As Long
x = 24 * 60 * 60# '这里写 x = 86400 更好
msg1$ = 输入时间
msgtitle = 时间换算
a = InputBox(msg1$, msgtitle)
Print a / x
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式