Целочисленные литералы
Литералы
Литералы или константы предназначены для представления фиксированных значений. В языке Си различают две категории констант:
● Явные константы или литералы
● Символические константы.
Явная константа – это константа, тип и значение которой определяются ее записью. Явные константы в языке Си часто называют литералами. Литерал относится к категории лексем. Особенность литералов состоит в том, что они не являются объектами. Например, 2 – это явная константа (литерал) целого типа.
Символическая константа в программе представлена своим именем. При выборе этого имени следует руководствоваться соображениями повышения читабельности программы. С учетом этого имя символической константы должно раскрыть ее назначение. Символическую константу в языке Си можно определить, например, с помощью директивы препроцессора define. В данном разделе рассматриваются только явные константы. Рассмотрим константы, относящиеся к различным типам данных. Начнем с целочисленных констант.
Целочисленные литералы служат для представления привычных из математики целых чисел. Прежде всего, следует учитывать, что в языке Си имеются три разновидности целочисленных литералов, которые различаются используемой системой счисления. Программист имеет возможность при записи целочисленных литералов воспользоваться следующими системами счисления:
● Восьмеричной,
● Десятичной,
● Шестнадцатеричной.
По умолчанию используется десятичная система счисления. Для указания на систему счисления, отличную от десятичной системы, литерал должен быть снабжен префиксом. Для указания на восьмеричную систему счисления следует в качестве такого префикса использовать цифру нуль, а для работы с шестнадцатеричной системой следует использовать один из двух возможных префиксов: 0x или 0X.
В связи с тем, что существует значительное количество разновидностей данных целого типа, целочисленный литерал может содержать суффикс для указания на тип значения, им определяемого. В языке Си используется следующие суффиксы:
● Для литералов, относящихся к типу long, - символ l или L,
● Для литералов, относящихся к типу long long, – символы ll или LL,
● Для литералов, относящихся к беззнаковым типам – символ u или U.
Суффиксы, относящиеся к беззнаковым типам, могут комбинироваться с суффиксами, используемыми при записи литералов типа long и long long.
Литералами считаются только положительные числа. Наличие перед числовым литералом знака минус рассматривается как применение унарного оператора минус “-”.
Ниже приводятся примеры целочисленных констант.
Константа | Пояснение |
Восьмеричная константа. Десятичное значение равно 16 | |
0x25 | Шестнадцатеричная константа. Десятичное значение равно 37. |
2U | Десятичная константа типа unsigned int (или просто unsigned) |
0L | Десятичная константа типа long int (или просто long) |