Булевы (boolean)

Объявление

Type   Boolean = (False, True);
          WordBool = (False, True);
          LongBool = (False, True);
          ByteBool = (False, True);

Имеются четыре предопределенных булевых типа: Boolean, WordBool, LongBool и ByteBool.

Замечания

Эти типы имеют следующие размеры:

  • Boolean - Byte (8 бит)
  • WordBool - Word (16 бит)
  • LongBool - LongInt (32 бита)
  • ByteBool - Byte (8 бит)

Поскольку данные типы являются перечислимыми порядковыми типами, то существуют следующие связи:

False < True
Ord(False) = 0
Ord(True) = 1
Succ(False) = True
Pred(True) = False

Тип Boolean является предпочтительным, так как он использует наименьшее количество памяти. ByteBool, WordBool и LongBool существуют только для совместимости с Windows.

В выражениях, следующие операторы сравнения производят результат типа Boolean: "=", "<>", ">", "<", ">=", "<=", "IN"

Для совместимости с Windows, булевы типы могут принимать порядковые значения не только 0 и 1.

Булево выражение является ложью (False), если его порядковое значение равно нулю и истиной (True), если его порядковое значение не равно нулю.

Булевы операторы Not, And, Or и Xor работают проверяя значения на 0 (False) или не 0 (True), но всегда возвращают результат с порядковым значением 0 или 1.