c++ で CRCを計算するコード.boost の crc.hpp を使います
#include <iostream> #include <cassert> #include <boost/crc.hpp> using namespace std; int main() { const char *data = "hello boost/crc.hpp"; const size_t len = sizeof(data); // CRC-CCITT boost::crc_basic<16> crc1( 0x1021, 0xFFFF, 0, false, false ); crc1.process_bytes( data, len ); cout << hex << crc1.checksum() << dec << endl; assert( crc1.checksum() == 0x5516 ); return 0; }