BIT


Gets the state of an individual bit in an integer value.

Syntax:
#define Bit( value, bit_number ) (((value) and (Cast(TypeOf(value), 1) shl (bit_number))) <> 0)

Usage:
result = Bit( value, bit_number )

Parameters:
value
The integer value.
bit_number
The index of the bit.

Return Value:
Returns an Integer value of -1 if the bit is set, or 0 if the bit is cleared.

Description:
This macro expands to an integer value indicating whether or not the bit specified by bit_number is set in the integer value. Behaves as `(value And 1 Shl bit_number) <> 0`.

The valid range of values for bit_number depends on the size, in bits, of `Typeof(value)`, which is `0` (from the lowest bit) through `Sizeof(value) * 8 - 1` (up to the highest bit). See Standard Datatype Limits for a table of the standard datatypes and their sizes.

Examples:
Print Bit(4,2)
Print Bit(5,1)
Print Bit(&H8000000000000000ULL,63)
will produce the output:

-1
0
-1


Dialect Differences:
Differences from QB:
See also:
Back to Bit Manipulation
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki



sf.net phatcode