КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА

Turbo C++ Version 1.0 Programmer’s Guide

Комментировать

LIB.com.ua [электронная библиотека]: : TURBO C++ Version 1.0 Programmer’s Guide

— 81 —

Округление всегда выполняется к нулю.
Операции типа сложения

Существует две операции типа сложения: + и -. Синтаксис
этих операций следующий:

выражение-типа-сложения:
выражение-типа-умножения
выражение-типа-сложения + выражение-типа-умножения
выражение-типа-сложения — выражение-типа-умножения

Операция сложения +

Допустимыми являются следующие типы операндов выражения
операнд1 + операнд2:

1. Операнд1 и операнд2 оба арифметического типа.

2. Операнд1 интегрального типа, а операнд2 является
указателем на объект.

3. Операнд2 интегрального типа, а операнд1 является
указателем на объект.

В первом случае выполняются стандартные арифметические
преобразования операндов, а результатом является их арифме-
тическая сумма. В случаях 2 и 3 применяются правила арифме-
тических действий с указателями. (Арифметические действия с
указателями рассматриваются на стр.57 оригинала).

Операция вычитания —

Допустимыми являются следующие типы операндов выражения
операнд1 — операнд2:

1. Операнд1 и операнд2 оба арифметического типа.

2. Оба операнда являются указателями на совместимые ти-
пы объектов. (Примечание: неквалифицированный тип type расс-
матривается как совместимый с квалифицированными типами
const type, volatile type и const volatile type.)

3. Операнд2 интегрального типа, а операнд1 является
указателем на объект.

В первом случае выполняются стандартные арифметические
преобразования операндов, а результатом является их арифме-
тическая разность. В случаях 2 и 3 применяются правила ариф-
метических действий с указателями.

Операции поразрядного сдвига

Существует две операции поразрядного сдвига: >.
Синтаксис этих операций следующий:

выражение-типа-сдвига:
выражение-типа-сложения
выражение-типа-сдвига > выражение типа сдвига

Операция поразрядного сдвига влево > E2 операнды Е1 и Е2 должны иметь тип
int. С Е1 и Е2 выполняются обычные целочисленные действия, а
тип результата определяется операндом Е1. Если Е2 отрицате-
лен, либо по числу разрядов больше или равен Е1, то операция
неопределена.

Результатом операции E1 >> E2 является значение E1,
сдвинутое вправо на Е2 разрядов. Если Е1 имеет тип unsigned,

то при необходимости происходит его заполнение нулями слева.
Если же Е1 имеет тип signed, то заполнение слева выполняется
знаком (0 для положительных и 1 для отрицательных значений).
Такое расширение знакового бита гарантирует, что знак у Е1
>> E2 будет таким же, как и у E1. За исключением типов со
знаком, значение E1 >> E2 представляет собой целую часть
частного.

Операции отношения

Существует четыре операции отношения: < > =. Син-
таксис этих операций следующий:

выражение-отношения:
выражение-типа-сдвига
выражение-отношения < выражение-типа-сдвига выражение-отношения > выражение-типа-сдвига
выражение-отношения =выражение-типа-сдвига

Операция меньше чем < В выражении E1 < E2 операнды должны удовлетворять одно- му из следующего набора условий: 1. Оба значения Е1 и Е2 - арифметического типа. 2. Оба значения Е1 и Е2 являются указателями квалифици- рованных или неквалифицированных версий совместимых типов объектов. Определение квалифицированных имен дается на стр.108 оригинала. 3. Оба значения Е1 и Е2 являются указателями квалифици- рованных или неквалифицированных версий совместимых неполных типов. В случае 1 выполняются обычные арифметические преобра- зования. Результат E1 < E2 имеет тип int. Если значение E1 меньше значения E2, то результат равен 1 (истина); в против- - 83 - ном случае результат равен 0 (ложь). В случаях 2 и 3, где Е1 и Е2 являются указателями сов- местимых типов, результат операции E1 E2 дает 1 (истина), если значение Е1 больше значения Е2;в противном случае результат равен 0 (ложь), причем используются те же способы интерпретации арифметических сравнений и сравнений указателей, что опреде- лены для операции "больше чем". К операндам применимы те же правила и ограничения. Операция меньше или равно = E2 дает 1 (истина), если значение Е1 больше или равно значению Е2. В противном случае результат равен 0 (ложь), причем используются те же способы интерпретации арифметических сравнений и сравнений указате- лей, что определены для операции "меньше чем". К операндам применимы те же правила и ограничения. Операции типа равенства Существует две операции типа равенства: == и !=. Они проверяют условие равенства операндов арифметического типа и типа указателей, следуя при этом правилам, аналогичным тем, что действуют для операцийотношения. Отметим, однако, что == и != имеют более низкий приоритет выполнения, чем операции отношения , =. Кроме того, операции == и != позво- ляют выполнять проверку равенства указателей в таких случа- ях, где операции отношения неприменимы. Синтаксис этих опе- раций следующий: выражение-типа-равенства:

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *