Bin
Returns a binary (base 2) string representation of an integer
Syntax
`
Declare Function Bin ( ByVal number As UByte ) As String
Declare Function Bin ( ByVal number As UShort ) As String
Declare Function Bin ( ByVal number As ULong ) As String
Declare Function Bin ( ByVal number As ULongInt ) As String
Declare Function Bin ( ByVal number As Const Any Ptr ) As String
Declare Function Bin ( ByVal number As UByte, ByVal digits As Long ) As String
Declare Function Bin ( ByVal number As UShort, ByVal digits As Long ) As String
Declare Function Bin ( ByVal number As ULong, ByVal digits As Long ) As String
Declare Function Bin ( ByVal number As ULongInt, ByVal digits As Long ) As String
Declare Function Bin ( ByVal number As Const Any Ptr, ByVal digits As Long ) As String
`
Usage
`
result = Bin[$]( number [, digits ] )
`
Parameters
`number`
A number or expression evaluating to a number. A floating-point number will be converted to a `LongInt`.
`digits`
Desired number of digits in the returned string.
Return Value
A string containing the unsigned binary representation of `number`.
Description
Returns a string representing the unsigned binary value of the integer `number`. Binary digits range from 0 to 1.
If you specify `digits` > 0, the result string will be exactly that length. It will be truncated or padded with zeros on the left, if necessary.
The length of the string will not go longer than the maximum number of digits required for the type of `number` (32 for a `Long`, 64 for a `LongInt)`.
If you want to do the opposite, i.e. convert an binary string back into a number, the easiest way to do it is to prepend the string with `"&B"`, and convert it to an integer type, using a function like `CInt`, similarly to a normal numeric string. E.g. `CInt("&B101")`
Example
`
Print Bin(54321)
Print Bin(54321, 5)
Print Bin(54321, 20)
`
will produce the output:

    1101010000110001
    10001
    00001101010000110001

Dialect Differences

- Not available in the -lang qb dialect unless referenced with the alias `__Bin`.
- The string type suffix "$" is ignored in the -lang fblite dialect, always warn.
- The string type suffix "$" is ignored in the -lang fb dialect, always warn.

Differences from QB

- New to FreeBASIC

See also

- `Oct`
- `Hex`
- `ValInt`
- `ValLng`