мета-данные страницы
  •  

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
c:c_ultimate_guide:operators [2025/10/09 13:57] radi0devc:c_ultimate_guide:operators [2025/11/09 12:07] (текущий) – внешнее изменение A User Not Logged in
Строка 35: Строка 35:
 Унарный оператор:  Унарный оператор: 
   * ''!'' - не   * ''!'' - не
 +
 +===== Операторы присвоения =====
 +
 +
 +представляют из себя сокрашенные выражения
 +
 +++++список|
 +
 +  * ''+='' - присваивание после сложения. Присваивает левому операнду сумму левого и правого операндов: A += B эквивалентно A = A + B
 +  * ''-='' - присваивание после вычитания. Присваивает левому операнду разность левого и правого операндов: A -= B эквивалентно A = A - B
 +  * ''*='' - присваивание после умножения. Присваивает левому операнду произведение левого и правого операндов: A *= B эквивалентно A = A * B
 +  * ''/='' - присваивание после деления. Присваивает левому операнду частное левого и правого операндов: A /= B эквивалентно A = A / B
 +  * ''%='' - присваивание после деления по модулю. Присваивает левому операнду остаток от целочисленного деления левого операнда на правый: A %= B эквивалентно A = A % B
 +  * ''<<='' - присваивание после сдвига разрядов влево. Присваивает левому операнду результат сдвига его битового представления влево на определенное количество разрядов, равное значению правого операнда: A <<= B эквивалентно A = A << B
 +  * ''>>='' - присваивание после сдвига разрядов вправо. Присваивает левому операнду результат сдвига его битового представления вправо на определенное количество разрядов, равное значению правого операнда: A >>= B эквивалентно A = A >> B
 +  * ''&='' - присваивание после поразрядной конъюнкции. Присваивает левому операнду результат поразрядной конъюнкции его битового представления с битовым представлением правого операнда: A &= B эквивалентно A = A & B
 +  * ''|='' - присваивание после поразрядной дизъюнкции. Присваивает левому операнду результат поразрядной дизъюнкции его битового представления с битовым представлением правого операнда: A |= B эквивалентно A = A | B
 +  * ''^='' - присваивание после операции исключающего ИЛИ. Присваивает левому операнду результат операции исключающего ИЛИ его битового представления с битовым представлением правого операнда: A ^= B эквивалентно A = A ^ B
 +++++
  
 ===== Операторы сдвига ===== ===== Операторы сдвига =====
Строка 124: Строка 143:
 </code> </code>
  
 +===== Приоритет и очередность =====
 +^ Операторы ^ Выполняются ^
 +|%% () [] -> . %%| слева направо |
 +|%% ! ~ ++ -- + - * & (тип) sizeof %%| справа налево |
 +|%% * / % %%| слева направо |
 +|%% + - %%| слева направо |
 +|%% << >> %%| слева направо |
 +|%% < <= > >= %%| слева направо |
 +|%% == != %%| слева направо |
 +|%% & %%| слева направо |
 +|%% ^ %%| слева направо |
 +|%% | %%| слева направо |
 +|%% && %%| слева направо |
 +|%% || %%| слева направо |
 +|%% ?: %%| справа налево |
 +|%% = += -= *= /= %= &= ^= |= <<= >>= %%| справа налево |
 +|%% , %%| слева направо |
 +
 +<note>
 +Примечание. Унарные операторы +, -, * и & имеют более высокий приоритет, чем те же бинарные
 +операторы.
 +</note>