Операции в Си

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

  Приори­тет Операция Название Порядок выполнения
  () Скобки, вызов функции Слева направо
[] Индекс элемента массива Слева направо
. Выделение элемента структуры или Объединения Слева направо
-> Выделение элемента структуры (объеди­нения), адресуемой (го) указателем Слева направо
  ! Логическое отрицание Справа налево
- Изменение знака Справа налево
++ Увеличение на единицу Справа налево
-- Уменьшение на единицу Справа налево
& Адрес значения переменной Справа налево
* Значение по указанному адресу Справа налево
  * Умножение Слева направо
/ Деление Слева направо
% Остаток от деления Слева направо
  + Сложение Слева направо
- Вычитание Слева направо
  < Меньше Слева направо
<= Меньше или равно Слева направо
> Больше Слева направо
>= Больше или равно Слева направо
  == Равно Слева направо
!= Не равно Слева направо
  && Логическое И Слева направо
  || Логическое ИЛИ Слева направо
  ?: Условная операция Слева направо
  = Присваивание Справа налево
*= Умножение и присваивание Справа налево
/= Деление и присваивание Справа налево
%= Остаток и присваивание Справа налево
+= Сложение и присваивание Справа налево
-= Вычитание и присваивание Справа налево

Дадим пояснения по некоторым операциям.

Следует подчеркнуть особенность операции деления. Эта операция дает целый результат, если оба операнда целые. Например, выражение 9/5 даст результат, равный единице. Чтобы получить действительный результат, необходимо иметь хотя бы один действительный операнд. Так, 9./5 будет равно 1.8.

Операции увеличения на единицу (инкремента) «++» и операция уменьшения на единицу (декремента) «--» имеют префиксную (++n или --n) и постфиксную (n++ или n--) формы записи. В первом случае значение операнда n сначала изменяется, а затем используется для дальнейших вычислений, во втором же случае n сначала используется, а затем изменяется. Так, например, выражение а + b++ означает «сложить а и b и увеличить значение b на единицу», а а + ++b – «увеличить значение b на единицу и сложить а и b».

Операция & применяется к идентификатору переменной, а операция * к выражению, имеющему значение адреса (указателя), так, например, a и *&a эквивалентны.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: