[リストへもどる]
一括表示

投稿時間:2004/06/16(Wed) 13:56
投稿者名:KOKO
URL :
タイトル:
計算についてなんですが・・・
初歩的なことでもうしわけないのですが一応本なり過去ログなり探したのですが質問させていただきます
VB6.0で999999×999999999をするとオーバーフローしましたとエラーがでますが
どうしてるのでしょうか?
よければお願いします。

投稿時間:2004/06/16(Wed) 14:08
投稿者名:Say
Eメール:
URL :
タイトル:
Re: 計算についてなんですが・・・
999999も999999999も32768以上2147483647以下の整数ですから、
Long型とみなして計算され、結果がLong型の上限2147483647を超えると
オーバーフローします。

とりあえずオーバーフローを回避するには
MsgBox 999999# * 999999999#
というふうに倍精度浮動小数点演算にすればエラーは出なくなりますが、
15桁程度の精度しかありませんので、計算する数の桁数によっては
結果が丸められることがあり、注意が必要です。

投稿時間:2004/06/16(Wed) 14:25
投稿者名:KOKO
URL :
タイトル:
お礼
花ちゃんさんSayさん返信ありがとうございます。
できました^^とてもわかりやすいお答えありがとうございます。