作者leicheong (睡魔)
看板Programming
标题Re: VB6.0 的溢位问题
时间Sun Oct 14 16:32:32 2007
※ 引述《DRAGONLL (要研不要延)》之铭言:
: 在VB6.0中如果产生溢位的话 会跳出错误的讯息
: 但是我想照样把值算出来
: 请问有办法处理吗??
: code======
: Private Sub Command1_Click()
: Dim c As Integer
: a = Val(Text1.Text): b = Val(Text2.Text)
: c = a + b
: Text3.Text = c
: End Sub
: ===젩
为什麽不把c宣告成long(32-bit integer)?
如果要算64bit或以上, 请自行把Text1和Text2的值先割成有最大固定
长度(这长度看你要用Integer或是Long了...), 再自行implement
"Add with carry"功能. (只是要做加数的话应不会太难...)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.73.77.181
1F:推 DRAGONLL:因为我要实际输出溢位产生的结果 211.74.182.161 10/14 16:46
2F:→ DRAGONLL:并且和宣告成long的结果进行比较 211.74.182.161 10/14 16:47
3F:→ DRAGONLL:C 语言则是可以直接输出溢位结果 211.74.182.161 10/14 16:48
4F:→ DRAGONLL:才想请问VB有没办法输出,麻烦了~! 211.74.182.161 10/14 16:49
5F:→ sunneo:那也许要从"关闭overflow exception"做起220.132.228.138 10/14 19:22
6F:推 DRAGONLL:请问关闭"关闭overflow exception"的选项 211.74.182.161 10/14 19:33
7F:→ DRAGONLL:在哪里呢...路径是? 211.74.182.161 10/14 19:34
8F:→ sunneo:我只是给个方向而已 =3=...不确定有没有220.132.228.138 10/14 19:50
9F:→ sunneo:不然你用个exception handler去抓看看?220.132.228.138 10/14 19:51