Литерал (; или безымянная константаКрасилов А. А. Информатика. В семи томах. Т.4. Представление данных. М. 1997—2003, ) — запись в исходном коде компьютерной программы, представляющая собой фиксированное значениеСтатья literal в Энциклопедии PC Magazine. Литералами также называют представление значения некоторого типа данных.

Описание Литералы представляют собой константы, включаемые непосредственно в текст программы.

Литералы могут быть изменены в тексте программы лишь во время редактирования. В отличие от переменных, литералы не могут изменяться во время выполнения программы. Настоящие именованные константы тоже не изменяются во время исполнения, но в некоторых языках (например, Delphi) словом const могут быть обозначены и инициализированные до начала выполнения статические переменные, которые затем изменяются в ходе выполнения программы.

В следующем примере 1 и Кот являются литералами, а number и pet это переменные: int number = 1; string pet = "Кот";

Типы литералов Почти все языки программирования допускают использование тех или иных литералов для примитивных типов. Однако, синтаксис литералов может значительно отличаться.

Обычно выделяют следующие элементарные типы литералов:

Числовые литералы — литералы для записи чисел. Иногда числовые литералы подразделяются на целые литералы, дробные литералы и т. п. с различной точностью представления и в различных системах счисления (например, битовые литералы в PL/I). В программах числовые литералы обычно записываются в привычном для числа виде. В следующем примере 100 и 3.1415 — числовые литералы:

int a = 100; float b = 3.1415;

Строковые литералы обычно представляют собой строку символов, заключённую в кавычки или скобки. В некоторых языках программирования выделяют символьные литералы, включающие один символ. В разных языках программирования допускаются различные типы кавычек. Например, в следующем примере на языке JavaScript один, два и три — строковые литералы, записанные с использованием различных допустимых типов кавычек:

var one = "один"; var two = 'два'; var three = `три`;

Логические литералы, Логические значения — два литерала: true и false или их аналоги — T, t, Y, y, F, f, N, n, NIL и т. п.. Например:

bool t = true; bool f = false;

Литерал ссылочного типа, адрес в памяти — обычно, числовые литералы, указывающие на ячейку в памяти.

Null-литерал, Пустое значение — особый тип литерала, в зависимости от языка программирования, относящийся к ссылочному либо объектному типу. Единственное допустимое значение этого типа литералов null, или аналог, например NIL, None, Nothing — ссылка никуда не ведёт либо объект отсутствует.

T o = null;

Регулярные выражения. В некоторых языках программирования регулярные выражения представляют собой литерал особого типа, включающий две части: шаблон для поиска и заменуФлэнаган Д. JavaScript. Подробное руководство. — Пер. с англ. — СПб: Символ-Плюс, 2008. — 992 с., ил.. Например:

/JavaScript/gif

В некоторых объектно-ориентированных языках программирования (например, ECMAScript третьей версии) допускается использовать выражения, которые служат массивами-литералами и объектами-литералами. Например:

[1, 2, 3, 4, 5] // Инициализатор массива {x: 1, y: 2} // Инициализатор объекта

Иногда анонимные функции относят к литералам-функциям, а анонимные объекты к литералам-объектам.

Примечания

Ссылки Literals

Категория:Концепции языков программирования Категория:Программные конструкции