-4
a &= ~(1 << 10);
ли на самом деле означает, что код выше:C++ побитового Оператор Понимание код
a &= (0 << 10);
a &= ~(1 << 10);
ли на самом деле означает, что код выше:C++ побитового Оператор Понимание код
a &= (0 << 10);
~
является побитовой инверсия (возьмите каждый 1 и превратить его в 0, каждом 0 в 1), так что если у вас есть x = 0b0100
(предположим, что 4-битные целые числа в секунду), затем ~x == 0b1011
. <<
«сдвиньте это налево», поэтому «(1 < < 2) == 0b0100`.
Нет, ваш второй код равен 'a = 0;' – Slava
Почему бы не написать программу, чтобы узнать? –
Нет, это означает 'a & = ~ (1 << 10);' ... duh? – immibis