Целочислени константи

Целочислените константи в кода са набрани числа, например 123. По подразбиране тези числа се интерпретират като цели числа, но можете да промените това с помощта на модификаторите U и L.

Целочислените константи се тълкуват като числа в десетичната система, следователно, за да зададете число в друга система, трябва да използвате специални префикси.

Основа десетична бройни системи - 10. Математическите операции с такива числа са познати на всички. Константите без префикси се считат за десетични.

101 // същото като десетичното 101 ((1 * 10 ^ 2) + (0 * 10 ^ 1) + 1)

Основа двоичен числова система - 2. За записване на числа в тази система се използват само 0 и 1.

B101 // същото като десетичното 5 ((1 * 2 ^ 2) + (0 * 2 ^ 1) + 1)

Двоичният префикс може да се използва само с 1-байтови (8-битови) числа в диапазона от 0 (B0) до 255 (B11111111). За да напишете брой от тип int (16 бита) в двоичен формат, можете да използвате двойната операция:

myInt = (B11001100 * 256) + B10101010; // B11001100 - голям байт

Основа осмична числови системи - 8. За да пишете числа в тази система, само числа в диапазона от 0 до 7. Висшите числа се характеризират с префикса "0".

0101 // същото като 65 десетични ((1 * 8 ^ 2) + (0 * 8 ^ 1) + 1)

Внимание. Можете да направите трудно откриваема грешка, ако случайно добавите 0 преди константа, тъй като в този случай последното ще бъде интерпретирано от компилатора като осмично число.

Основа шестнадесетичен цифрови системи - 16. За записване на числа в тази система се използват цифри от 0 до 9, както и букви от А до F; докато A има стойност 10, B - 11 и т.н. до F, което е еквивалентно на 15. Шестнадесетичните стойности са с префикс "0x". Моля, обърнете внимание, че A-F може да се въведе както с главни, така и с малки букви (a-f).

0x101 // същото като 257 десетична ((1 * 16 ^ 2) + (0 * 16 ^ 1) + 1)

U&L модификатори

По подразбиране целочислените константи се интерпретират като int със съответните гранични стойности.

За да зададете различен тип за цяло число константа, напишете след нея:

  • 'u' или 'U "за прехвърляне на константата към неподписан тип данни. Например: 33u
  • „l“ или „L“, за да прехвърли константата към дългия тип данни. Например: 100000L
  • 'ul' или 'UL' за преместване на константата в неподписан дълго. Например: 32767ul