Літерал ( — константа) — постійне значення певного типу даних, записане у вихідному коді комп'ютерної програми.
У наступному прикладі, написаному мовою Java, 1 і cat — літерали, а num і str — змінні:
int num=1; String str="cat";Приклад на PHP, 1 і cat — літерали, а $num і $str — змінні:$num = 1; $str = "cat";
Типи літералів Існують різні типи літералів: логічні (булеві), числові, рядкові, масивні і об'єктні.
Логічні літерали Логічні літерали можуть приймати 2 значення — («істина») або («хиба»).
Приклад на C#: bool t = true; bool f = false;
Числові літерали Числові літерали використовуються для запису чисел. Іноді числові літерали поділяють на цілі, дробові тощо з різною точністю представлення і в різних системах числення. У програмах числові літерали зазвичай записуються у звичному для числа вигляді. У наступному прикладі 100 і 3.1415 — числові літерали:
int a=100; float b=3.1415;
Рядкові літерали Рядкові літерали зазвичай являють собою рядок символів, записаний у лапках. У деяких мовах програмування виділяють символьні літерали, що включають лише один символ. У різних мовах програмування допускаються різні типи лапок.
У наступному прикладі на JavaScript один і два — рядкові літерали, записані з використанням різних типів лапок:
const one="один"; let two='два';
У мові C і С++ ці типи лапок позначають різні літерали. У прикладі нижче символьний масив one[] ініціалізується рядковим літералом "1" довжиною в один символ плюс нуль-термінатор, а '2' — символьний літерал, яким ініціалізується змінна типу char:
char one[] = "1"; char two = '2';
Приклад на PHP: $x = "text";
Приклад на Pascal: const text = 'Hello, World!';
Null-літерал Null-літерал, пусте значення — особливий тип літерала, який залежно від мови програмування, відноситься до посилального або об'єктного типу. Єдине допустиме значення цього типу літералів — «», тобто це означає, що посилання нікуди не веде, або об'єкт відсутній.
Об'єктні та масивні літерали У деяких об'єктно орієнтованих мовах програмування (наприклад, в ECMAScript третьої версії) допускається використовувати вирази, які служать масивами-літералами та об'єктами-літералами.Флэнаган Д. JavaScript. Подробное руководство. — Пер. с англ. — СПб: Символ-Плюс, 2008. — 992 с., ил. Наприклад:
[1,2,3,4,5] // Ініціалізатор масиву {x:1, y:2} // Ініціалізатор об'єкта
Див. також Змінна (програмування) Анонімна функція (функціональний літерал)
Примітки
Посилання History and use of literals in programming languages.