Показать сообщение отдельно
  #3 (permalink)  
Старый 15.03.2011, 23:30
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

Возможно, это делается для того, чтобы количество итераций цикла не превысило максимального 32-битного значения 4294967295.

Если по каким-то причинам массив заимеет больше 4294967295 элементов (O_o), то «благодаря» сдвигу >>> цикл не станет пробегать все эти элементы массива, а «урежет» старшие разряды (дальше 32-го), и тогда, например, 4294967296 превратится в 0, 4294967297 — в 1, а 449812501682 — в 3135902898 (легко проверить на калькуляторе отбрасыванием разрядов выше 32-го).

Возможно, есть и другой смысл…
Ответить с цитированием