Long.reverseBytes()在Qt中怎么实现
今天开发Qt的时候遇到了一个问题,在别人的java代码里面发现了Long.reverseBytes()函数,在网上查了半天,没法理解reverseBytes(long num)函数,Qt中也找不到相关的函数。后来经过一番实验,其实reverseBytes(long num)返回的就是num在内存中的补码,而并非得到“得到扭转的字节顺序在指定的long值的二进制补码表示”。接下来演示在Qt中如何实现reverseBytes()函数。
操作方法
- 01
QByteArray bytes; qlonglong num = 100000; bytes.resize(sizeof(num)); memcpy(bytes.data(),&tmp,sizeof(num)); //内存复制函数,直接复制num //的补码到bytes中。
- 02
上一段代码即可在Qt中和java中Long.reverseBytes(num)效果相同。
赞 (0)