Получить контрольную сумму CRC NSData в Objective-C - PullRequest
16 голосов
/ 06 ноября 2010

Как подсчитать CRC (32 или 64) объекта NSData в Objective-C?

Заранее спасибо!

Ответы [ 3 ]

41 голосов
/ 26 января 2013

Использование функции crc32() из библиотеки zlib:

#import <zlib.h>

NSData *data;

// ...

unsigned long result = crc32(0, data.bytes, data.length);
NSLog(@"CRC32: %lu", result);

Обязательно свяжите libz библиотеку с вашим проектом:

enter image description here

5 голосов
/ 07 ноября 2010

Посмотрите здесь для CRC32 для NSData

http://classroomm.com/objective-c/index.php?action=printpage;topic=2891.0

0 голосов
/ 08 декабря 2017

Из iOS11 используйте это:

unsigned long result = crc32_z(0, data.bytes, data.length);
...