Определение степени двойки
От: remark Россия http://www.1024cores.net/
Дата: 09.03.10 17:42
Оценка: 7 (3) +2
Иногда бывает надо проверить, что переданный аргумент — есть степень двойки, ну там например в конструкторе хэш-таблицы для начального размера. Не знаю, может это и известный приём, но я раньше мучился со вспомогательными функциями.
assert((size & (size - 1)) == 0);


з.ы. 0 тоже определяет как степень двойки


1024cores — all about multithreading, multicore, concurrency, parallelism, lock-free algorithms
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.