Операции отрицания в C++

Перечислим операции отрицания: -, !, ~

Арифметическое отрицание (унарный минус - ) изменяет знак операнда целого или вещественного типа на противоположный.

Логическое отрицание (!) дает в результате значение О, если операнд есть истина (не нуль), и значение 1, если операнд равен нулю. Операнд должен быть целого или вещественного типа, а может иметь также тип указатель.

Поразрядное отрицание (~), называют побитовым, инвертирует каждый разряд в двоичном представлении целочисленного операнда.

Примеры При выполнении операции поразрядного отрицания все биты, равные 1, устанавливаются равными 0, а все биты равные нулю, устанавливаются равными 1. Для выполнения данной операции в языке С++ используется символ ‘~’ как показано в следующем примере:
unsigned char var = 153; //двоичная запись 10011001 
unsigned char not = ~var; //результат 01100110 (число 102) 
В результате переменная not будет содержать число 102. В ходе выполнения операции поразрядного И результирующий бит будет равен 1, если оба бита в соответствующих операндах равны 1, т.е.
10010011 & 00111101 даст результат 00010001. 
Для выполнения операции логического И используется символ & следующим образом:
unsigned char var = 153; //двоичная запись 10011001 
unsigned char mask = 0x11; // число 00010001 (число 17) 
unsigned char res = var & mask; // результат 00010001 
или
var &= mask; // то же самое, что и var = var & mask;

Оставить комментарий

Вы должны быть авторизованы , чтобы оставить или оценить комментарий.

Онлайн всего: 3
Гостей: 3
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте