Литерал (информатика)

Литерал (англ. literal) — запись в исходном коде компьютерной программы, представляющая собой фиксированное значение[1]. Литералами также называют представление значения некоторого типа данных[1].

Описание

Литералы представляют собой константы, включаемые непосредственно в текст программы. В отличие от прочих элементов языка (констант, переменных)[1], литералы не могут быть изменены в тексте программы.

В следующем примере , 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;

Регулярные выражения. В некоторых языках программирования регулярные выражения представляют собой литерал особого типа, включающий две части: шаблон для поиска и замену[2]. Например:

/javascript/gi 

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

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

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

Примечания

  1. Статья literal в Энциклопедии PC Magazine
  2. Флэнаган Д. JavaScript. Подробное руководство. — Пер. с англ. — СПб: Символ-Плюс, 2008. — 992 с., ил.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.