0

我认为默认情况下unsigned intunsigned long int(32位)。同样,我认为unsigned long默认unsigned long int情况下(32位)。为什么 NSNumber (unsignedIntValueunsignedLongValue) 上有两个选择器,或者我应该担心数据类型位长度?

谢谢!

4

2 回答 2

4

在 LP64(Mac OS 64 位)上,long 是 64 位宽,而 int 只有 32 位。

于 2012-08-26T21:47:31.057 回答
2

我了解 OSX 和 iOS 的架构有限,但总的来说,除了标准中保证的基本相对顺序之外,您不应该对整数大小做出任何假设。

如果您确实需要特定大小的整数值,请使用 uint8_t、uint16_t、uint32_t 和 uint64_t 类型。

于 2012-08-27T02:52:10.493 回答