1. 程式人生 > >NSInteger 與 NSUInteger 和 int 區別

NSInteger 與 NSUInteger 和 int 區別

NSUInteger是無符號的整型, NSInteger是有符號的整型,在表檢視應用中常見 NSUInteger row= [indexPath row];因為這是顯示tableViewCell有多少個,只能是非零整數的,也就是說,NSUInteger常用於索引值;

 int與 NSInteger沒有本質區別,只是一個定義問題,請看關於它們的定義:

#if __LP64__ || (TARGET_OS_EMBEDDED && !TARGET_OS_IPHONE) || TARGET_OS_WIN32 || NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
#else
typedef int NSInteger;
typedef unsigned int NSUInteger;
#endif