C++.Бархатный путь



Перечень операций - часть 4


Операция используется с операндами арифметического типа. Один из операндов может иметь тип указателя. В любом случае значением выражения является либо сумма значений, либо сумма адреса и целочисленного значения, кратного размерам данного типа.

Результат сложения указателя с целым числом эквивалентен результату соответствующего количества операций инкремента, пррименённых к укаазателю.

Тип и значение результата выражения любой бинарной операции определяется в зависимости от принятых в C++ соглашений о преобразовании типов, о которых будет сказано ниже.

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

Симметричная по отношению к операции сложения бинарная операция.

2.2. Мультипликативные операции

* Операция умножения.

Операндами могут быть выражения арифметического типа. Значением выражения является произведение значений. Тип результата выражения любой бинарной операции определяется в зависимости от принятых в C++ процедур преобразования типов данных.

/ Операция деления.

Операндами могут быть выражения арифметического типа. Значением выражения является частное от деления значения первого операнда на второй операнд. Тип результата выражения любой бинарной операции определяется в зависимости от принятых в C++ процедур преобразования типов данных.

% Операция получения остатка от деления целочисленных операндов (деление по модулю).

Операндами могут быть выражения арифметического типа. В процессе выполнения операции операнды приводятся к целому типу. При неотрицательных операндах остаток положительный. В противном случае знак остатка определяется в зависимости от реализации. Известно, что для Borland C++ 15%6=3, (-15)%6=-3, 15%(-6)=3, (-15)%(-6)=-3.

При ненулевом делителе для целочисленных операндов выполняется соотношение (a/b)*b+a%b=a

2.3. Операции сдвига

Эти операции определены только для целочисленных операндов.

<< Операция левого сдвига.

Операндами могут быть выражения интегрального типа. Значением выражения является битовое представление левого операнда, сдвинутое влево на количество разрядов, равное значению правого операнда. При левом сдвиге на i разрядов первые i разрядов левого операнда теряются, последние i разрядов левого операнда заполняются нулями.




Содержание  Назад  Вперед