如何检查给定地址是 32 位还是 64 位?

How can I check if a given address is 32-bit or 64-bit?

如何检查 long 变量中的地址值是 32 位还是 64 位

示例:

long a = 0x06000000
long b = 0x13FFF0000

如何以编程方式检查这些地址的位数?

您可以使用 AND 运算来检查是否设置了任何高 32 位。假设您有 ulong 因为地址不是负数:

if ((x & 0xFFFFFFFF00000000UL) == 0)
    Console.WriteLine("x would fit into 32 bit");