ios开发

NSInteger,NSNumber,Int区别

2017-08-14  本文已影响20人  晓叶

NSInteger和NSNumber

首先NSInteger和NSNumber两个没区别.
NSInteger只是一个基本的数据类型.
NSNumber是OC的对象,继承自NSValue,NSValue又继承自NSObject

NSUInteger 和NSInteger

NSUInteger是无符号的,即没有负数,NSInteger是有符号的。

NSInteger 和Int

C语言Windows中:
16位系统:long是4字节,int是2字节
32位系统:long是4字节,int是4字节
64位系统:long是8字节,int是4字节
objective-c里,苹果的官方文档中总是推荐用NSInteger
NSInteger是一个封装,它会识别当前操作系统的位数,自动返回最大的类型。当你不知道你的操作系统是什么类型的时候,你通常会想要使用NSInteger,所以或许你想要你的int类型范围尽可能的大,用NSInteger,32位系统NSInteger是一个int,即32位,但当时64位系统时,NSInteger便是64位的。——所以就是一般推荐用NSInteger的

上一篇 下一篇

猜你喜欢

热点阅读