Взятие обратного знака для чисел с плавающей запятой.
Пример
Унарный оператор «минус».
Операция вида –x. Унарные операторы - предопределены для всех числовых типов.
Для целых чисел результат вычисляется вычитанием x из нуля. Для унарного оператора «–» операнд преобразуется к первому типу из набора int и long, которым может быть представлено значение операнда. Не допускается применение унарного оператора «–» к операндам типа ulong.
Данная программа вызовет ошибку: Постоянное значение "-17" не может быть преобразовано в "ulong"
ulong A = -17;
Console.WriteLine(A);
Пример. Если операнд оператора взятия обратного знака имеет тип uint, то он преобразуется в тип long.
uint a = 17;
var r = -a;
Console.WriteLine(r);
Результат
Результатом является значение x с обратным знаком. Если x является NaN, то результат также равен NaN. Данная константа возвращается в том случае, если результат операции является неопределенным.
Пример.
double a = 0.0;
double r = 0.0;
var d = a / r;
Console.WriteLine(d);
Результат.
Минус бесконечность это результат деления отрицательного числа на нуль.
Плюс бесконечность это результат деления положительного числа на нуль.
Операции вида !x
Существует единственный стандартный оператор логического отрицания:
bool operator !(bool x);
Этот оператор вычисляет логическое отрицание операнда. Если операнд равен true, то результат равен false. Если операнд равен false, то результат равен true.
Console.WriteLine(!true);
Console.WriteLine(!false);
Операция вида ~x результатом операции является побитовое дополнение x.
Оператор ~ выполняет операцию поразрядного дополнения операнда, заключающуюся в инвертировании каждого бита. Операторы поразрядного дополнения предопределены для типов int, uint, long и ulong