Оглавление

7.5. Приоритет выполнения операторов

В какой последовательности будет вычисляться это выражение?
       Х = 5 + 10 * 3 / 2;
Это зависит от приоритета выполнения операторов. В данном случае последовательность вычисления выражения будет следующей:
1.   Число 10 будет умножено на 3, так как приоритет операции умножения выше приоритета операции сложения.
2.   Полученное значение будет поделено на 2, так как приоритет операции деления равен операции умножения, но выше операции сложения. При равных приоритетах операции выполняются слева направо.
3.   К полученному значению будет прибавлено число 5, так как оператор присваивания = имеет наименьший приоритет.
4.   Значение будет присвоено переменной х.
С помощью скобок можно изменить последовательность вычисления выражения. Следующее выражение будет вычислено в другом порядке:
       X = (5 + 10) * 3 / 2;

1.   К числу 5 будет прибавлено 10.
2.   Полученное значение будет умножено на 3.

3.   Полученное значение будет поделено на 2.
4.   Значение будет присвоено переменной х.

 

Перечислим операторы в порядке убывания приоритета:
□  !, ~, ++, -- —отрицание, двоичная инверсия, инкремент, декремент;
□  *, /, % — умножение, деление, остаток от деления;
□  +, - — сложение и вычитание;
□  <<, >>, >>> — двоичные сдвиги;
□  & — двоичное И;
□  ^ — двоичное исключающее ИЛИ;
□  | — двоичное ИЛИ;
□  =, +=, -=, *=, /=, %= — присваивание.

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити