Унарные арифметические операторы
Объявление
Оператор | Операция | Тип операндов | Тип результата |
+ | Подтверждение знака | Integer, Real | Integer, Real |
- | Смена знака | Integer, Real | Integer, Real |
Замечания
Любой операнд с типом поддиапазона или порядковым, обрабатывается, как будто он имеет перечислимый тип.
Если оба операнда операций +, -, *, Div или Mod имеют тип Integer, то результат имеет общий тип двух операндов. Если один или оба операнда операций +, - или * имеют тип Real, то результат имеет тип Real в режиме {$N-} или Extended в режиме {$N+}.
Если операнд операторов + или - имеет целочисленный тип, то результат тоже имеет целочисленный тип. Если операнд имеет тип Real, то результат имеет тип Real или Extended.
Значение X/Y всегда имеет тип Real или Extended независимо от типов операндов. Если значение Y равно нулю, то происходит ошибка деления на нуль. Значение I Div J - математическое частное от I / J, округленное до значения
целочисленного типа. Если значение J равно нулю, то происходит ошибка деления на нуль.
Оператор Mod возвращает остаток, полученный от деления двух операндов:
I Mod J = I - (I Div J) * J
Знак результата Mod - такой же, как и знак I. Если значение J равно нулю, то происходит ошибка деления на нуль.