5. Выражения
37
Вычисление терма x/y будет ошибкой, если y равен нулю. Результат операций
сложения, вычитания и умножения будет целого типа, если оба операнда - целого типа.
Если тип одного операнда вещественный, то получается результат вещественного типа.
Операции и стандартные функции, дающие вещественный результат, всегда следует
считать приближенными, а не точными. Их точность зависит от реализации.
5.2.2. иогические операции
Операция
Действие
Тип операндов
Тип результата
     not
логическое "не"
Boolean 
Boolean
     and
логическое "и"
Boolean
Boolean
       &
логическое "и"
Boolean
Boolean
      or
логическое "или"
Boolean
Boolean
       |
логическое "или"
Boolean
Boolean
     xor
логическое
Boolean
Boolean
исключающее "или"
ПРИМЕЧАНИЕ: Если после вычисления одного операнда операции AND или OR
результат уже известен, то значение второго операнда не влияет на результат и
поэтому не вычисляется. Если необходимо чтобы значение второго операнда всегда
вычислялось, нужно применять операции '&' и '|', соответственно. Значения обоих
операндов указанных операций вычисляются до конца.
иогические операции выполняются над операндами логического типа и тип их
результата - логический. В некоторых реализациях (но не в ISO Pascal-е) логические
операции применяются над операндами целого типа. Тогда они выполняются над парами
соответствующих битов операндов (побитовые операции). В UniPascal-е не разрешается
применение логических функций над операндами целых типов. Но их можно применять
над операндами стандартных типов BYTE, WORD, LONGWORD.
5.2.3. Операции над множествами
Над объектами множественного типа можно применять следующие операции:
*
равенство множеств
=
*
неравенство (различие) множеств
<>
*
включение одного множества в другое
>=, <=
*
объединение множеств
+
*
пересечение множеств
*
*
разность множеств
-
*
принадлежность к множеству
IN
Оба операнда должны всегда относиться к совместимым типам.
Получение результата подчиняется множественной логике.
5.2.4. Операции отношения
Операции сравнений применяются над операндами любого типа (за исключением
файлового), но результат всегда логического типа (Boolean).
=
равенство, операция применяется над операндами любых совместимых типов за
исключением файлового;
<<  <  GO  >  >>

Вернуться к началу сайта