Константы
В качестве констант в Турбо Паскале могут использоваться целые, вещественные и шестнадцатеричные числа, логические константы, символы, строки символов, конструкторы множеств и признак неопределенного указателя NIL.
Целые числа записываются со знаком или без него по обычным правилам и могут иметь значение от – 2147483648 до +2147483647. Следует учесть, что, если целочисленная константа выходит за указанные границы, компилятор дает сообщение об ошибке. Такие константы должны записываться с десятичной точкой, т.е. определяться как вещественные числа.
Вещественные числа записываются со знаком или без него с использованием десятичной точки и/или экспоненциальной части. Экспоненциальная часть начинается символом е или Е, за которым могут следовать знаки "+" или "-" и десятичный порядок. Символ е (Е) означает десятичный порядок и имеет смысл "умножить на 1.0 в степени". Например:
- 3.14Е5-3.14 умножить на 10 в степени 5;
- -17е-2 – минус 17 умножить на 10 в степени минус 2.
Если в записи вещественного числа присутствует десятичная точка, перед точкой и за ней должно быть хотя бы по одной цифре. Если используется символ экспоненциальной части е (Е), за ним должна следовать хотя бы одна цифра десятичного порядка.
Шестнадцатеричное число состоит из шестнадцатеричных цифр, которым предшествует знак доллара $ (код 36 в ASCII). Диапазон шестнадцатеричных чисел – от $00000000 ДО $FFFFFFFF.
Логическая константа – это либо слово FALSE (ложь), либо слово TRUE (истина).
Символьная константа – это любой символ ПК, заключенный в апострофы:
- 'z' – символ z;
- 'Ф' – символ Ф.
Если необходимо записать собственно символ апострофа, он удваивается:
- '''' – символ ' (апостроф).
Допускается использование записи символа путем указания его внутреннего кода, которому предшествует символ # (код 35), например:
- #97 – символ а;
- #90 – символ Z;
- #39 – символ ';
- #13 – символ CR.
Строковая константа – любая последовательность символов (кроме символа CR – возврат каретки), заключенная в апострофы. Если в строке нужно указать сам символ апострофа, он удваивается, например:
'Это – строка символов; 'That' 's string.'.
Строка символов может быть пустой, т.е. не иметь никаких символов в обрамляющих ее апострофах. Строку можно составлять из кодов нужных символов с предшествующими каждому коду символами #, например, строка:
#83#121#109#98#11#108
Эквивалентна строке:
' Symbol'.
Наконец, в строке можно чередовать части, записанные в обрамляющих апострофах, с частями, записанными кодами. Таким способом можно вставлять в строки любые управляющие символы, в том числе и символ CR (код 13), например:
#7'Ошибка!'#13'Нажмите любую клавишу …'#7.
Конструктор множества – список элементов множества, обрамленный квадратными скобками, например:
[1.2.4..7.12] [blue, red] [] [true]
В отличие от стандартного Паскаля, в Турбо Паскале разрешается в объявлении констант использовать произвольные выражения, операндами которых могут быть ранее объявленные нетипизированные константы, имена типов и объектов, а также следующие функции от них:
abs lo ptr swap chr odd rpund trunc hi ord sizeof length pred succ
Например:
const MaxReal = Maxlnt div SizeOf(real); NumChars = ord('Z') – ord('a') + 1; Ln10 = 2.302585092994; Ln10R = 1 / Lnl0;.