dcsimg
Login | Register   
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: Visual Basic
Expertise: Beginner
Jun 26, 1998

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


Converting long to two integers

Question:
How do you convert a long integer to two integer values (that is, get the low word and high word contained in a long integer)? Danial Appleman's API Guide discusses a function to do this, but it requires distribution of another DLL. How can I retrieve these values without using Dan Appleman's function/DLL?

Answer:
The following two functions seem to end up in nearly every app I write! Enjoy...

Public Function WordHi(LongIn As Long) As Integer
   '
   ' Mask off low word then do integer divide to
   ' shift right by 16.
   '
   WordHi = (LongIn And &HFFFF0000) \ &H10000
End Function

Public Function WordLo(LongIn As Long) As Integer
   '
   ' Low word retrieved by masking off high word.
   ' If low word is too large, twiddle sign bit.
   '
   If (LongIn And &HFFFF&) > &H7FFF Then
      WordLo = (LongIn And &HFFFF&) - &H10000
   Else
      WordLo = LongIn And &HFFFF&
   End If
End Function
DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date