无论系统是32位还是64位,uint都是32位吗?

5
在C#中,uint是一个UInt32类型,因此无论操作系统是否为32位或64位,它始终为32位长。我说得对吗?
2个回答

11

没错,uint 总是别名 global::System.UInt32(而且是始终为 32 位的:)。同样的逻辑也适用于其他预定义的别名。

我所能想到的唯一一个内置值类型,其大小会因平台而异的是IntPtr,原因显而易见。(当然,任何一个由 IntPtr 组成的值类型都会有相同的行为。像 SafeHandle 这样的类就是例子。)


4
是的,你是对的。UInt32总是代表一个32位无符号整数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接