Унарные арифметические операторы
Оператор унарного плюса C, арифметического отрицания, дополнения и логического отрицания обсуждаются в следующем списке.
Оператор | Описание |
---|---|
+ | Оператор унарного плюса, предшествующий выражению в скобках, вызывает принудительную группировку включенных операций. Он используется с выражениями, которые включают несколько ассоциативных или коммутативных бинарных операторов. Операнд должен иметь арифметический тип. Результат — значение этого операнда. В отношении целочисленного операнда выполняется восходящее приведение целого типа. Тип результата — это тип операнда более высокого уровня. |
- | Оператор арифметического отрицания создает отрицательную форму своего операнда (дополнение двух). Операнд должен являться целочисленным значением или значением с плавающей запятой. Этот оператор выполняет обычные арифметические преобразования. |
~ |
Оператор побитового дополнения (или bitwise-NOT) создает побитовое дополнение своего операнда. Операнд должен иметь целочисленный тип. Этот оператор выполняет обычные арифметические преобразования; результат имеет тип операнда после преобразования. |
! | Оператор логического отрицания (logical-NOT) создает значение 0, если операнд равен true (ненулевой), и значение 1, если операнд равен false (0). Результат имеет тип int . Этот операнд должен представлять собой целочисленное значение, значение с плавающей запятой или значение указателя. |
Унарные арифметические операции с указателями недопустимы.
Примеры
В следующих примерах показаны унарные арифметические операторы:
short x = 987;
x = -x;
В приведенном выше примере новое значение x
является отрицательной формой 987 или –987.
unsigned short y = 0xAAAA;
y = ~y;
В этом примере новое значение, присвоенное переменной y
, является дополнением до единицы значения 0xAAAA или 0x5555 без знака.
if( !(x < y) )
Если x
больше или равно y
, результат выражения равен 1 (true). Если x
меньше y
, результат равен 0 (false).
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по