Унарные операторы

Оператор Действие
+ X Унарный плюс. Это знак числа X. Он использован по умолчанию.
++X Префиксная форма инкремента. Увеличение X на 1 перед использованием.
X ++ Постфиксная форма инкремента. Увеличение X на 1 после использования.
- X Унарный минус. Это знак числа X.
-- X Префиксная форма декремента. Уменьшение X на 1 перед использованием.
X -- Постфиксная форма декремента. Уменьшение X на 1 после использования.
! X Логическое отрицание. Унарный оператор, который выполняет над операндом X операцию НЕ. Он задан для типа bool и меняет значение операнда true на false, или наоборот.
~X Поразрядное дополнение. Инвертирование каждого бита целого X.
(T) x Явное преобразование x в тип T

 

Пример3:

int x=10, y1, y2;

y1 = ++x; //x=11

y2 = x++; //x=11

Console.WriteLine("y1= " + y1);

Console.WriteLine("y2= " + y2);

Console.ReadKey();

 

В обоих случаях переменная х получит значение 11. Разница состоит лишь в том, в какой момент она станет равной 11 (до присвоения ее значения переменной y или после).

 

Пример4:

int x=10, y1;

y1 =x + ++x;

Console.WriteLine("y1= " + y1);

Console.ReadKey();

 

Инструкция x + ++x выполняется следующим образом: сначала запоминается исходное значение х=10. Затем инкрементируется х (х=10+1=11), далее суммируются новое значение с исходным (11+10=21), а результат суммирования присваивается y.

 

Пример5:

int x=10, y2;

y2 =x + x++;

Console.WriteLine("y2= " + y2);

Console.ReadKey();

 

Инструкция x + x++ выполняется следующим образом: сначала суммируются х+х (10+10=20), результат суммирования присваивается y, затем инкрементируется переменная х (10+1=11) для дальнейшего использования в программе.