Как стать автором
Обновить

Подсчёт числа установленных битов в файле

Время на прочтение1 мин
Количество просмотров3.2K
Одна интересная реализация подсчёта числа установленных битов в файле. Код на языке C++ с обильным использованием STL. Если всё так хорошо, то почему это в блоге «Ненормальное программирование» (читатели настоятельно рекомендовали перенести в блог C++) спросите Вы? Сейчас увидите :)



Во-первых объявим класс битового итератора:



Теперь подсчитаем число установленных бит в исполняемом файле:



Забавно, неправда ли? А чтобы подсчитать число нулевых бит, всего лишь нужно вызвать:



Вместо:



Исходный код выложен здесь: codepad.org/S1TT56PR (см. ссылку в UPDATE2).

UPDATE1:
Товарищ gribozavr справедливо заметил, что правильней использовать константу CHAR_BIT вместо числа 8 в коде.

UPDATE2:
Товарищ mark_ablov указал на изъян в конструкторе копирования, код в статье обновлён и вот исправленная версия кода: http://codepad.org/knEKdNJX.
Теги:
Хабы:
Всего голосов 33: ↑16 и ↓17-1
Комментарии20

Публикации

Ближайшие события