unsignd long型のデータを扱うには

解決


もぐりん  2004-10-01 20:17:29  No: 116703

こんにちは。
C言語でいうunsigned long型のデータを扱う場合、どのように変数を宣言したら
いいでしょうか?
現在、wmaのファイルを開いてファイル情報を表示するプログラムを作成中ですが、
再生時間がunsigned long(Hex 4Byte)のデータで格納されているので、Long型の
変数に格納しようとするとオーバーフローになってしまいます。
つまり、再生時間(100us単位)のデータを秒単位に変換したいのです。
よろしくお願いします。


ABC  2004-10-01 22:08:03  No: 116704

VBではunsigned型のLong変数はありませんので目的により
自分で扱えるように工夫するしかありません。
一例を書いておきます

  Dim lngA  As Long
  Dim dblB  As Double
  
  lngA = &HFFFFFFFF
  
  dblB = lngA And &H7FFFFFFF
  If lngA And &H80000000 Then
    dblB = dblB + CDbl(2 ^ 31)
  End If
  Debug.Print dblB


もぐりん  2004-10-13 01:35:15  No: 116705

連絡が遅くなってすみません。
ABCさんの方法でうまくいきました。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加