古代VBプログラマ質問スレ(Ver.6.0 まで) part65 [転載禁止]©2ch.net (832レス)
前次1-
抽出解除 レス栞

657
(1): デフォルトの名無しさん [sage] 2022/05/04(水) 01:56:07.05 ID:cCuNnoh+(1/2) AAS
VB6でDouble型をLarge_Integer型に変換するにはどうすればいいんでしょうか?

ググって以下のソースを見つけたのですが、オーバーフローします。
QuadPart使えないし。。。

Private Function cvtDblToLi(Val As Double) As LARGE_INTEGER
Dim foo As LARGE_INTEGER

foo.lowpart = Val And &HFFFFFFFF
foo.highpart = RightShift(Val, 16)

cvtDblToLi = foo

End Function
659
(1): デフォルトの名無しさん [] 2022/05/04(水) 08:51:33.36 ID:llwekS7n(1) AAS
>>657
つかさー
VB6のDouble 型ってIEEE754に準拠してるだろうから
もっと基数とか指数とか仮数とかちゃんとみて
変換掛けてやらないといけないんじゃない?(鼻ホジ)

なんかそれ見てると下位4バイトをlowPartに
上位6バイトをhighPartに突っ込んでるようにしか見えない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.209s*