C # оператор ">> =" - как это работает? - PullRequest
1 голос
/ 10 ноября 2011

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

Ответы [ 6 ]

9 голосов
/ 10 ноября 2011

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

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

x >>= y

оценивается как

x = x >> y

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

>> = Оператор (C # Reference)

2 голосов
/ 10 ноября 2011

"x >>= y" is equivalent to "x = x >> y"
см. Также:
http://sharpertutorials.com/c-operator-list/

2 голосов
/ 10 ноября 2011

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

2 голосов
/ 10 ноября 2011

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

 int i = 4;
 i >>= 1;
 // i is 2 now
2 голосов
/ 10 ноября 2011

Как и C,

x >>= y

совпадает с:

x = x >> y

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

Например, переменная x с десятичным значением 50<sub>10</sub> (в двоичном виде, 00110010<sub>10</sub>) может сдвигаться на два бита вправо с помощью:

x >>= 2

и он станет 00001100<sub>2</sub> или 12<sub>10</sub>.

2 голосов
/ 10 ноября 2011

x >> = y - это то же самое, что и x = x >> y

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...