我想把NSUInteger保存在我的核心数据中,我不知道我应该使用哪种类型(整数16,32,64)来适应所需的空间。
据我所知:
Integer 16 can have minimum value of -32,768 to 32,767
Integer 32 can have minimum value of -2,147,483,648 to 2,147,483,647
Integer 64 can have minimum value of -very large to very large
NSUInteger是unsigned long的类型def,它等于unsigned int (Types in objective-c on iPhone)
因此,如果我使用numberWithUnsignedInteger:将NSUInteger转换为NSNumber,并将其另存为NSNumber(Integer32),我就可以安全地取回我的数据,对吧?
发布于 2012-01-14 04:44:26
你真的需要NSUInteger
的所有功能吗?在iOS上,这是一个无符号的32位值,它可能会变得非常大。它将查找到有符号的64位。
但无论如何你可能不需要那么高的精确度。uint32_t
的最大值是UINT32_MAX
,即4,294,967,295 (40亿)。如果您每秒递增一次,则需要超过136年才能达到该值。到那时,您的用户的iPhone将不再存在...:)
https://stackoverflow.com/questions/8853733
复制相似问题