September 2017
Beginner
402 pages
9h 52m
English
There are a few different directives for printing integer numbers in different formats:
| Directive | Description |
| %b | An integer in binary representation |
| %d or %i | Signed decimal integer |
| %u | Unsigned decimal integer |
| %o | An integer in octal format |
| %x | Unsigned integer in hexadecimal format |
| %X | Same as %x but in uppercase |
Let us print the same number in different formats:
printf "Binary: %b, decimal: %d, octal: %o\n", 10, 10, 10; printf "Hexadecimal: %x, uppercased: %X\n", 10, 10;
The output of this program looks like this:
Binary: 1010, decimal: 10, octal: 12 Hexadecimal: a, uppercased: A
The %u directive expects an unsigned integer, so the compiler raises an error if it sees the negative number:
$ perl6 -e'printf "%u", ...