如果需要通过小bit的数据拼接成64bit,则通过下面操作:
下面是36bit数据用64bit的低32bit存储,其余类似处理。
long long cmp = 0;
long long cmp1 = 229;
long long cmp2 = 2740;
long long cmp3 = 1917;
cmp |= (long long int)cmp1 << 24;
cmp |= (long long int)cmp2 << 12;
cmp |= (long long int)cmp3 << 0;
printf("%016llx\n", cmp);