Шаг 24.
Стандартные типы. Группа булевских типов

    На этом шаге мы рассмотрим правила использования логических типов.

    Object Pascal так же, как и Borland Pascal версии 7.0, поддерживает четыре булевских типа: Boolean, ByteBool, WordBool и LongBool. Характеристики булевских типов приведены в таблице 1.

Таблица 1. Характеристики логических типов
Идентификатор типа Значению False соответствует Значению True соответствует Размер памяти
Boolean число 0 любое число, отличное от 0 1 байт
ByteBool число 0 1 байт
WordBool число 0 в обоих байтах 2 байта
LongBool число 0 во всех байтах 4 байта

    Отметим, что булевские типы ByteBool, WordBool и LongBool служат для обеспечения совместимости разрабатываемых программ с Windows, в которой значению False соответствует число 0, а значению True - любое число, отличное от 0. Результирующим типом операций сравнения и логических операций по-прежнему остается тип Boolean.

    Функции Ord, Pred и Succ со всеми булевскими типами работают одинаково. Причем функция Ord для значения False возвращает порядковый номер 0, а для значения True - десятичное значение числа, записанного в соответствующей булевской переменной. Отличие булевских типов ByteBool, WordBool и LongBool от классического Boolean проявляется после присваивания результата функций Pred и Succ переменным соответствующих типов. В этом случае для переменной типа Boolean при значении True функция Ord по-прежнему возвращает десятичное значение числа, записанного в этой переменной. А для переменных типов ByteBool, WordBool и LongBool при значении True функция Ord всегда возвращает значение 1.

    На следующем шаге мы рассмотрим символьные типы.




Предыдущий шаг Содержание Следующий шаг