NSInteger 与 NSUInteger 和 int与 NSInteger 区别(转)

转自:http://blog.csdn.net/duxinfeng2010/article/details/7606261

先说说NSInteger 与 NSUInteger,在看书上代码是遇见NSInteger和NSUInteger,不知道什么时候用NSInteger,什么时候用NSUInteger,在网上搜了一下,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

原文地址:https://www.cnblogs.com/QM80/p/3585036.html