Задать вопрос
@KPIshnik

Как найти Per-byte sum файла?

Привет всем. Кто нибудь знает что такое Per-byte sum файла, и как ее можно найти. Гугл ответа не дал. Заранее спасибо.
  • Вопрос задан
  • 2584 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 2
Vladusch
@Vladusch
Побайтово считываем данные из файла в переменную byte размера char или больше, при этом складыая их в какую-нить переменную, например sum += byte. Желательно в переменную типа long long, unsigned long и т.д. или в double. Если результат складывать в double или во float - то для уменшения ошибок накопления и/или выравнивания используйте алгоритмы Кохана (Когана) или попарного суммирования (это как пример).
Ответ написан
@Free_ze
Пишу комментарии в комментарии, а не в ответы
Как-то так, наверное:

unsigned long long sum = 0;

std::ifstream file( "filePath",  std::ios::binary );

if ( file.is_open() )
{
   char byte;
   while ( file.good() )
   {
      file.read(&byte, sizeof(char) );
      sum += byte;
   }
   file.close();
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
FloppyFormator
@FloppyFormator
Может, имели в виду это?

perl -le 'use bytes; local $/; $s+=ord $_ for map {split //, $_} <>; print $s' < /path/to/filename
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы