Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Константы






Константа – хранящееся в компьютере число или строка, значение которого (которой) остается неизменным на протяжении всего времени выполнения программы.

Как и переменная, константа хранится в ячейке оперативной памяти с определенным адресом. Константы делятся на именные и неименные. Именная константа может быть определена с помощью любого математического или строкового выражения. Во время компиляции имя константы просто замещается в программе ее значением. Числа и строки, записанные в исходном коде, называются неименными константами. Тип неименной константы определяется по правилам:

· любая последовательность цифр (возможно, предваряемая знаком " " или " + " или разбиваемая одной точкой) воспринимается компилятором как неименованная константа – число (целое или вещественное) (см. табл. 4);

· любая последовательность символов, заключенная в апострофы, воспринимается как неименованная константа – строка, если требуется представить сам апостроф, он дублируется (см. табл. 4);

· символьные неименованные константы записываются в одной из трех форм (см. табл. 4): 1) символ заключенный в апостроф, 2) десятичный код символа, предваряемый знаком #, 3) буква, предваряемая знаком ^ (управляющий символ).

Таблица 4

Примеры неименованных констант

Константы
Целые Вещественные Символьные Строковые
Десятичные Шестнадцатеричные* С плавающей точкой С порядком
  $0101 $FFA4 -0.26 .005 1.2e4 0.1E-5 'k' #186 ^M 'абырвал' 'I''m fine'

*Знак $ перед числом указывает о шестнадцатеричном представлении

Кроме того, существуют две специальные константы true и false, относящиеся к логическому типу данных.

В Object Pascal для объявления именных констант используется оператор const. Как и в случае var, если несколько операторов const расположены непосредственно один за другим, то ключевое слово const можно указывать только для первого оператора. Синтаксис оператора const имеет вид

Const

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

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

или


Const

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

[ имя_константы 1 = тип_константы 1 (выражение 1 ); ]

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

Диапазон значения константы (16 с.с.) Диапазон значения константы (10 с.с.) Тип
-$8000000000000000..-$80000001 -263..-2147483649 Int64
-$80000000..-$8001 -2147483648..-32769 Integer
-$8000..-$81 -32768..-129 Smallint
-$80..-1 -128..-1 Shortint
0..$7F 0..127 0..127
$80..$FF 128..255 Byte
$0100..$7FFF 256..32767 0..32767
$8000..$FFFF 32768..65535 Word
$10000..$7FFFFFFF 65536..2147483647 0..2147483647
$80000000..$FFFFFFFF 2147483648..4294967295 Cardinal
$100000000..$7FFFFFFFFFFFFFFF 4294967296..263-1 Int64

Любую уже описанную константу можно использовать при объявлении других констант, переменных и типов данных. Вот несколько примеров описания нетипизированных именованных констант:

Const

n = -10;

m = Int64(1000000000);

mmm = n*100;

x = 2.5;

c = string('z');

s = 'string';

b = true;

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

Изменить именную константу довольно легко, для этого достаточно изменить одну строку исходного кода, в котором определено ее значение. В то же время изменять неименную константу весьма неудобно: нужно найти и модифицировать каждую строку кода, в которой она используется. Поэтому для облегчения модификации программы рекомендуется использовать именные константы.

Как мы уже знаем, константы – это данные программы, которые не могут изменять свое значение во время выполнения программы. Но в этом правиле имеется исключение – типизированные константы. Их описание производится по следующему шаблону:

const имя_константы: тип_константы = начальное_значение;

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

Const

n: integer = -10;

x: real = 2.5;

c: char = 'z';

b: boolean = true;

Значение типизированных констант можно изменять во время выполнения программы, но при условии, что исполнена директива компилятора {$J+}. Если была выполнена директива {$J–}, то изменять значение типизированных констант нельзя, и они превращаются в обычные именованные константы.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.