苹果官方的API文档中,对于NSInteger的描述:
When building 32-bit applications, NSInteger is a 32-bit integer.
A 64-bit application treats NSInteger as a 64-bit integer.
也就是说:在32位App中,NSInteger是32位整型,在64位App中,NSInteger是64位整型.
由此可知:NSInteger能够自动匹配,在32位应用中,表示32位的整型,而在64位应用中,表示64位整型。
32位和64位区别
但是32位和64位区别在哪呢?小编在此做一下笔记
32位程序设计和64位程序设计最大的不同,就在于指针的长度不同,由32位变成了64位。
API在很多情况下,都需要将整数转换成指针或者相反。在 32 位的硬件上不会有问题,其中指针的大小和整数的大小是相同的,但在 64 位的硬件上却完全不一样。