Литералы
Литералы служат для явного указания значения некоторого типа, сохраняемого в программе. Различают числовые, символьные и строковые литералы.
Числовые литералы, как не трудно догадаться, используются для представления численных значений. Они могут содержать в себе символы подчеркивания (для удобочитаемости), однако, они не могут начинаться или заканчиваться символом подчеркивания, или содержать более одного символа подчеркивания подряд. Различают числовые литералы для представления целочисленных и вещественных значений.
Примеры целочисленных литералов, представляющих значение числа 2000:
2000 2_000 2E3 -- для целочисленных литералов разрешена экспоненциальная форма 2E+3 |
Возможно представление чисел в разных системах счисления, например, представление десятичного числа 12 может быть задано следующими литералами:
2#1100# -- двоичная система счисления 8#14# -- восьмеричная 10#12# -- десятичная (здесь, указана явно) 16#C# -- шестнадцатиричная 7#15# -- семиричная |
Литералы, описывающие вещественные значения, содержат точку и обязаны иметь хотя бы по одной цифре до и после точки. Примеры:
3.14 100.0 0.0 |
Символьные литералы обозначают одиночные символы, и для их обозначения используются одинарные кавычки. Например:
'a' 'b' |
Примечание:
В отличие от языка Паскаль, в Аде нельзя производить присваивание символьного литерала строковой переменной (подробности о работе со строками в Аде мы пока отложим на потом).
Строковые литералы предназначены для обозначения строковых значений, и для их обозначения используются двойные кавычки. Например:
"это строковый литерал" "a" -- это тоже строковый литерал, хотя и односимвольный |
Примечание:
Строковый литерал не может непосредственно содержать символ табуляции, хотя значение строковой переменной или константы - может. Это достигается путем конкатенации строки и символа, или вставкой символа в строку.