如何得到长整数的两个组成部分

How to get back the two components of a long integer

本文关键字:两个 组成部分 何得 到长整数      更新时间:2023-10-16
 DWORDLONG index = ((((DWORDLONG) i.nFileIndexHigh) << 32) | i.nFileIndexLow);

给定索引,我想找出i.f iledindexhigh和i.f iledindexlow的组成部分是什么。这可能吗?有个大概的概念会很有帮助。

是的,这是可能的,你只需要做你发布的逆操作:而不是<<|, >>&

nFileIndexLow = index & 0x00000000FFFFFFFF;
nFileIndexHigh = index >> 32;

考虑研究位运算,或者至少把你的计算器设置为十六进制/二进制模式,并使用掩码和移位

nFileIndexHigh == index>> 32;i.nFileIndexLow == index &0 x00000000ffffffff;