C # оператор «>>=» — Как это работает?

#c# #c#-4.0

#c# #c #-4.0

Вопрос:

Интересно, что делает оператор «>>=» в C #. Кто-нибудь может мне рассказать?

Ответ №1:

Это оператор присваивания со сдвигом вправо. Из MSDN:

Выражение вида

 x >>= y
  

вычисляется как

 x = x >> y
  

за исключением того, что x вычисляется только один раз. Оператор >> сдвигает x вправо на величину, указанную y .

>>= Operator (ссылка на C #)

Ответ №2:

x >> = y — это то же самое, что выполнять x = x >> y

Это точно так же, как =, но с операторами сдвига битов.

Ответ №3:

>>= является сдвигом на бит «вправо». например, у вас есть целочисленная переменная, содержащая значение 4. Он закодирован в двоичном формате 100. После выполнения операции i >>= 1 переменная содержит значение 2 (закодированное в двоичном формате 10).

  int i = 4;
 i >>= 1;
 // i is 2 now
  

Ответ №4:

"x >>= y" is equivalent to "x = x >> y"

смотрите также:
http://sharpertutorials.com/c-operator-list/

Ответ №5:

x>>=y это просто более короткий способ x = x >> y … Вы сдвигаете x на бит y вправо.

Ответ №6:

Как C,

 x >>= y
  

это то же самое, что:

 x = x >> y
  

Это похоже на все другие op= операторы, такие как = и /= . >> Оператор сдвигается на бит вправо.

Например, переменная, x имеющая десятичное значение 5010 (в двоичном формате, 0011001010 ), может быть сдвинута на два бита прямо с:

 x >>= 2
  

и это станет 000011002 , или 1210 .