2.1 Обычные константы

На верх  Назад  Вперёд

Объявления обычных констант создаются используя имя идентификатора со следующим за ним знаком "=" , за которым следует необязательное выражение, состоящее из допустимых комбинаций чисел, символов, логических значений или перечисляемых значений по мере их необходимости. Следующая синтаксическая диаграмма показывает, как создавать допустимые объявления обычных констант.


Объявление константы

201


Компилятор должен быть в состоянии вычислить выражение при объявлении константы во время компиляции. Это означает, что большинство функций в библиотеке времени выполнения не может использоваться в объявлениях констант. Тем не менее такие операторы как +, -, *, /, not, and, or, div, mod, ord, chr, sizeof, pi, int, trunc, round, frac, odd могут использоваться. Для получения дополнительной информации по выражениям Глава 12 Выражения.

Только константы следующих типов могут быть объявлены:

Перечисляемые типы.

Множества.

Типы указателей (но единственное позволенное значение Nil).

Вещественные типы.

Символ (Char).

Строка (String).

Все следующие объявления констант допустимые:

Const

e = 2.7182818;       {  Константа вещественного (Real) типа.  }

a =  2;               {  Константа порядкового (Integer) типа.  }

c = '4';                       {  Константа символьного типа.  }

s = 'Это строковая константа'; {  Константа строкового типа.  }

sc = chr(32)

ls = SizeOf(Longint);

P = Nil;

Ss = [1,2];

Присвоение значения обычной константе не разрешено. Таким образом, учитывая предыдущее объявление, следующее приведет к ошибке компилятора:

s := 'некоторая строка';

Для строковых констант тип строки зависит от некоторых установок компилятора. Если требуется определенный тип, должна использоваться типизированная константа, так как объяснено в следующем разделе.

До версии 1.9, Free Pascal не корректно поддерживает 64-битные константы. Начиная с версии 1.9, 64-разрядные константы могут быть определены.