DWORD, Cardinal, Integer LongInt и т.п.
cardinal
В общем, тогда сделаю Cardinal или LongInt. Это одно и то же? На разных платформах - тоже?
longint разный по платформам, лучше не брать
Ой. Ну нафиг тогда, да. Cardinal?
cardinal/integer
Только сегодня завела TSkUInt32)) Для совместимости CRC с D7
Эхх... знать бы, что это
TSkUInt32 = {$IFDEF VER150}LongInt{$ELSE}LongWord{$ENDIF}; Ну а про CRC тут много трындели) Мне главное, чтобы контрольная сумма файла совпадала с отправленной
Я бы не стал доверять алгоритму, где CRC со знаком
Может не права. Специально искала беззнаковое соответствие. Есть другие варианты?
https://github.com/serbod/NovaLib/blob/master/CRCUnit.pas
беззнаковое 32-битное платформонезависимое? Cardinal https://docwiki.embarcadero.com/Libraries/Athens/en/System.Cardinal https://www.freepascal.org/docs-html/rtl/system/cardinal.html
Увыс, cardinal не катит
я бы вообще CRC не стал доверять если, цитирую "сравнивается, что никто ручками суммы не подправил"
Для контроля целостности по каналам связи в реальном времени вполне годится. Хотя, вроде были кривые версии CRC-16 для TCP
Пыталась закопировать старый-новый вариант с работы, но многовато получилось. Там не только это пришлось переделывать, но и TPChar на анси и asm на pas, чтоб и на 64 было нормально, а не только 32-7 ->32-11
Обсуждают сегодня