Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Типы данных и операторы языка Delphi и Pascal.doc
Скачиваний:
2
Добавлен:
20.12.2018
Размер:
211.46 Кб
Скачать

2.6. Константы

Тип констант в языке определяется по их виду: константы целого типа – это целые числа, не содержащие десятичной точки, константы действительного типа – действительные числа, логические константы – логические значения true и false, символьные константы – либо строки длиной в один символ, либо конструкции вида #K или ^K.

Языки Pascal, Object Pascal и Delphi позволяют использовать синонимы для обозначения констант, в этом случае текст программы содержит раздел описания констант. Он имеет следующий вид:

const

имя = константное выражение;

Константы и константные выражения могут использоваться непосредственно в тексте программы в любых операторах и выражениях. В константном выражении можно использовать константы, именованные константы, объявленные ранее, арифметические операции, значения перечисляемых типов, конструкторы множеств, ряд встроенных функций. Константные выражения вычисляются компилятором в процессе компиляции и заменяются в выполняемом файле вычисленными значениями. Значения строковых констант заключаются в апострофы. Если в текст нужно включить апостроф, то он повторяется дважды. В значение строковой константы можно включать как отображаемые, так и неотображаемые символы.

Типизированные константы в действительности являются переменными, инициализируемыми при объявлении. Типизированная константа объявляется выражением:

const

<имя>:<тип> = <константное выражение>;

В дальнейшем в тексте программы с типизированными константами можно обращаться как с обычными переменными, изменяя, когда требуется, их значения (соответствующая директива компилятора $J+ устанавливается по умолчанию).

2.7. Переменные

Переменная – идентификатор, обозначающий некоторую область в памяти, в которой хранится значение переменной. Это значение может изменяться в ходе выполнения программы. Раздел объявления переменных имеет вид:

var

<список идентификаторов переменных>: <тип>;

Можно указывать не одно, а множество объявлений переменных. Каждое объявление в списке может содержать список идентификаторов переменных, разделяемых запятыми, или один идентификатор. Указываемый в объявлении тип может быть одним из встроенных типов, типом, ранее определенным программистом, или непосредственным описанием вводимого программистом типа.

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

Можно создавать динамические переменные, выделяя для них место в динамически распределяемой области памяти.

2.8. Инициализация переменных

Тип переменных определяется пользователем в разделе описания переменных. В откомпилированной программе для всех переменных отведено место в памяти, и всем переменным присвоены нулевые значения.

Инициализация переменных (задание начальных значений переменным) производится одновременно с их описанием. Для этого в стандарте языка Pascal используется конструкция вида имя переменной: тип = значение; которая должна быть размещена в разделе описания констант, например:

const

rWeight: real = 0.4;

В 32-разрядных версиях Delphi глобальные переменные можно инициализировать при объявлении. Инициализированная переменная получает присвоенное ей значение один раз – в начале выполнения программы. Потом же она хранит последнее присвоенное ей значение. Синтаксис инициализации:

var

имя: тип = значение;

Локальные переменные (описываемые в теле подпрограммы) подобным образом инициализировать нельзя. Но им можно присвоить начальные значения, используя локальные типизированные константы.