Next: Symbolic Constants, Up: Expressions

#### 3.10.1 Constants

All constants are integers.

As in C, the linker considers an integer beginning with ‘`0`’ to be octal, and an integer beginning with ‘`0x`’ or ‘`0X`’ to be hexadecimal. Alternatively the linker accepts suffixes of ‘`h`’ or ‘`H`’ for hexadeciaml, ‘`o`’ or ‘`O`’ for octal, ‘`b`’ or ‘`B`’ for binary and ‘`d`’ or ‘`D`’ for decimal. Any integer value without a prefix or a suffix is considered to be decimal.

In addition, you can use the suffixes `K` and `M` to scale a constant by `1024` or `1024*1024` respectively. For example, the following all refer to the same quantity:

         _fourk_1 = 4K;
         _fourk_2 = 4096;
         _fourk_3 = 0x1000;
         _fourk_4 = 10000o;

Note - the `K` and `M` suffixes cannot be used in conjunction with the base suffixes mentioned above.