首页 > 其他 > 详细

QByteArray数据进行CRC32校验时产生的随机结果

时间:2019-11-30 16:59:57      阅读:127      评论:0      收藏:0      [点我收藏+]

QT中使用QByteArray来存放了C++中的char数组。

两端使用相同的crc32进行校验,QT中却产生了随机的校验结果, C++端产生唯一的正确校验结果。

查看QByteArray相关资料,未发现有什么不妥之处,直到查看到如下文章:

https://blog.csdn.net/qq_33861317/article/details/95614667

才发现自己的错误:

 QByteArray* pBuf;
pBuf->append(PROTOCOL_HEAD);

pBuf->append(。。。);

crc = crc32(0x00, (unsigned char*)pBuf, bufferLength);

修改为:

crc = crc32(0x00, (unsigned char*)pBuf->data(), bufferLength);

即可。

QByteArray数据进行CRC32校验时产生的随机结果

原文:https://www.cnblogs.com/rohens-hbg/p/11962440.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!