Определение констант
Все значения, которые используются в программах на любых языках программирования, делятся на 2 больших класса: константы и переменные. При трансляции программы константы располагаются непосредственно в области кода программы, переменные же хранятся отдельно в сегменте данных. Так как при выполнении программы она не должна модифицировать сама себя (свойство реентерабельности), то константы изменять нельзя. Переменные же могут изменяться в процессе выполнения программы сколько угодно раз. Так, при трансляции оператора и дальнейшем его выполнении
А:=В+С
используются 3 ячейки памяти, а оператора
А:=8+9
только одна. Переменные обозначаются именами, а константы числами, строками и т.д.
Паскаль допускает введение в программу объектов, внешне похожих на переменные, но которые на самом деле являются константами, то есть не подлежат изменению при выполнении программы. Константе можно присваивать свое имя, которое просто является синонимом фиксированного числа. Использование в программе имен констант вместо записи конкретных значений является правилом хорошего стиля программирования, так как делает программу более наглядной и способствует лучшему ее пониманию без снижения эффективности. Кроме того, если конкретные значения обозначены именами, например, границы массивов, показатели точности вычислений, то при необходимости их легко изменить, не выискивая по всему тексту программы.
Описание констант начинается со служебного слова Const, за которым идет последовательность описаний констант:
Const <имя>=<значение>;
[<имя>=<значение>;...]
Здесь тип значения не указывается, так как считается, что значение является единственно возможным с однозначно определяемым типом по значению константы. В Турбо-Паскале допускается использовать в качестве значения константное выражение, строящееся по тем же правилам, что и обычное. Его операндами могут быть константы, ранее описанные имена констант и некоторые стандартные функции. Например:
Const
Max = 100; {константа целого типа}
Min = 0;
Center =(Max-Min) div 2; {выражение и результат тоже целого типа}
m_e = 9.10955854e-31; {масса покоя электрона – число вещественное}
LiteraA ='A'; {символьная константа}
В Турбо-Паскале существует понятие типизированных констант. Но на самом деле они являются переменными, которым в разделе описаний присваиваются начальные значения. Типизированные константы, как и обычные переменные, можно изменять в процессе вычислений, то есть они – переменные, но с начальными значениями. То есть их можно было бы описать в разделе описания переменных, а затем первыми операторами присвоить им начальное значение. Но в некоторых случаях, например при задании начальных значений массивам, их использование удобно. Для типизированных констант уже необходимо задавать конкретный тип, например:
Const max:integer = 9999;
MyArray: array[1..3] of string = ('Red','Blue','Green');
Определение типов
При составлении программ могут использоваться данные самых разнообразных типов, включая и достаточно сложные. От типа переменной зависит выделяемая для нее память и интерпретация данных в выделенной памяти.
В простейшем случае указывается стандартный тип при описании переменной, например, как в примере вычисления суммы. Однако в Паскале допускается определение своего типа отдельно, например определение комплексного типа:
Type Complex = Record
Re,Im:real;
end;
Начинается этот раздел с служебного слова Type и широко используется при работе с динамическими переменными и при объектном программировании.
Дата добавления: 2016-06-29; просмотров: 2377;