Операторы умножения в C
Мультипликативные операторы выполняют операции умножения (*), деления (/) и вычисления остатка (%).
Синтаксис
мультипликативное-выражение:
выражение-приведениямультипликативное-выражение * выражение-приведения
мультипликативное-выражение / выражение-приведения
мультипликативное-выражение % выражение-приведения
Операнды оператора вычисления остатка (%) должны быть целочисленными. Операторы умножения (*) и деления (/) могут принимать операнды целочисленного типа и операнды с плавающей запятой; типы операндов могут различаться.
Мультипликативные операторы выполняют обычные арифметические преобразования над операндами. После преобразования тип результата совпадает с типом операндов.
Примечание
Поскольку преобразования, выполняемые мультипликативными операторами, не обеспечивают условия переполнения и потери значимости, данные могут быть потеряны, если результат мультипликативной операции невозможно представить в типе операндов после преобразования.
Ниже описаны мультипликативные операторы C.
Оператор |
Описание |
---|---|
* |
Оператор умножения выполняет умножение двух операндов. |
/ |
Оператор деления выполняет деление первого операнда на второй. Если два целочисленных операнда делятся друг на друга и результат не является целым числом, он округляется в соответствии со следующими правилами. |
|
|
|
|
|
|
% |
Результат выполнения оператора вычисления остатка — остаток от деления первого операнда на второй. При неточном делении результат определяется следующими правилами. |
|
|
|
|
|
|
Блок, относящийся только к системам Microsoft
Если при делении один из операндов отрицательный, дробная часть результата отбрасывается.
Если при делении с использованием оператора вычисления остатка один из операндов отрицательный, знак результата совпадает со знаком делимого (первого операнда выражения).
Завершение блока, относящегося только к системам Microsoft
Примеры
Для приведенных ниже примеров используются следующие объявления:
int i = 10, j = 3, n;
double x = 2.0, y;
В следующей инструкции используется оператор умножения.
y = x * i;
В этом примере x умножается на i и получается значение 20.0. Результат имеет тип double.
n = i / j;
В этом примере 10 делится на 3. Дробная часть результата отбрасывается и получается целое значение 3.
n = i % j;
В этой инструкции переменной n присваивается значение целочисленного остатка (1) от деления 10 на 3.
Блок, относящийся только к системам Microsoft
Знак остатка совпадает со знаком делимого. Например:
50 % -6 = 2
-50 % 6 = -2
В каждом случае значения 50 и 2 имеют один и тот же знак.
Завершение блока, относящегося только к системам Microsoft