Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/129.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用qchecksum代替boost crc16_C++_Qt_Boost_Crc - Fatal编程技术网

C++ 使用qchecksum代替boost crc16

C++ 使用qchecksum代替boost crc16,c++,qt,boost,crc,C++,Qt,Boost,Crc,我想在数据包上使用crc16,而不是,但我不能使用相同的结果。我如何在qt中像boost crc一样接受crc16校验和 boost::crc<16, 0x1040, 0, 0, false, false>(packet, 4) boost::crc(数据包,4) 有许多CRC-16多项式和参数集。qchecksum只是其中一个的实现。所以不,你不能让qchecksum匹配任意的boost校验和。但如果这是一个选项,您可以调整boost校验和参数以匹配qchecksum 查看qch

我想在数据包上使用crc16,而不是,但我不能使用相同的结果。我如何在qt中像boost crc一样接受crc16校验和

boost::crc<16, 0x1040, 0, 0, false, false>(packet, 4)
boost::crc(数据包,4)

有许多CRC-16多项式和参数集。qchecksum只是其中一个的实现。所以不,你不能让qchecksum匹配任意的boost校验和。但如果这是一个选项,您可以调整boost校验和参数以匹配qchecksum

查看qchecksum源代码(并使用参数),似乎是这样的:

boost::crc<16, 0x1021, 0xFFFF, 0xFFFF, true, true>
boost::crc

您能告诉我们您尝试使用
QChecksum
的线路吗?@Torbjörn,假设数据包等于“0x00000000”,则boost crc等于零,但qt crc等于64734没有一个16位crc多项式,也没有一种方法使用一个多项式来计算crc。为什么假设boost和Qt使用相同的多项式,参数相同?