Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BorlandPascal.doc
Скачиваний:
54
Добавлен:
17.03.2015
Размер:
2.83 Mб
Скачать

Булевские типы

Существует 4 предопределенных булевских типа: Boolean,

ByteBool, WordBool и LongBool. Значения булевского типа обознача-

ются встроенными идентификаторами констант False и True. Посколь-

ку булевский тип является перечислимым, между этими значениями

имеют место следующие отношения:

- False < True

- Ord(False) = 0

- Ord(True) = 1

- Succ(False) = True

- Pred(True) = False

Переменные типа Boolean и ByteBool занимают 1 байт, пере-

менная WordBool занимает два байта (слово), а переменная LongBool

занимает четыре байта (два слова). Boolean - это наиболее предпо-

чтительный тип, использующей меньше памяти; типа ByteBool,

WordBool и LongBool обеспечивают совместимость с другими языками

и средой Windows.

Предполагается, что переменная типа Boolean имеет порядковые

значения 0 и 1, но переменные типа ByteBool, WordBool и LongBool

могут иметь другие порядковые значения. Когда выражение типа

ByteBool, WordBool или LongBool равна 1, то подразумевается, что

она имеет значение True, а если оно равно 0 - то False. Когда

значение типа ByteBool, WordBool или LongBool используется в кон-

тексте, где ожидается значение Boolean, компилятор будет автома-

тически генерировать код, преобразующий любое ненулевое значение

в значение True.

Символьный тип (char)

Множеством значений этого типа являются символы, упорядочен-

ные в соответствии с расширенным набором символов кода ASCII. При

вызове функции Ord(Ch), где Ch - значение символьного типа, возв-

ращается порядковый номер Ch.

Строковая константа с длиной 1 может обозначать значение

константы символьного типа. Любое значение символьного типа может

быть получено с помощью стандартной функции Chr.

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

Перечислимые типы определяют упорядоченные множества значе-

ний через перечисление идентификаторов, которые обозначают эти

значения. Упорядочение множеств выполняется в соответствии с пос-

ледовательностью, в которой перечисляются идентификаторы.

---- ---------------- ----

перечислимый -->¦ ( +--->¦ список +--->¦ ) +--->

тип L---- ¦идентификаторов¦ L----

L----------------

список --------------

идентификаторов -------->¦идентификатор+---T---->

^ L-------------- ¦

¦ ---- ¦

L------+ , ¦<------------

L----

При указании идентификатора в списке идентификаторов пере-

числимого типа он описывается как константа для блока, в котором

указано описание перечислимого типа. Типом этой константы являет-

ся описанный перечислимый тип.

Порядковый номер перечислимой константы определяется ее по-

зицией в списке идентификаторов при описании. Перечислимый тип, в

котором описывается константа, становится ее типом. Первая пере-

числимая константа в списке имеет порядковый номер 0.

Приведем пример перечислимого типа:

type

suit = (club, diamond, heart, spade);

Согласно этим описаниям diamond является константой типа

suit.

При применении функции Ord к значению перечислимого типа Ord

возвращает целое число, которое показывает, какое положение зани-

мает это значение в отношении других значений этого перечислимого

типа. Согласно предшествующим описаниям, Ord(club) возвращает 0,

Ord(diamond) возвращает 1 и так далее.

Соседние файлы в предмете Программирование на Pascal