草庐IT

nsinteger

全部标签

swift - 如何将可选的 NSInteger 转换为非可选的?

我需要检索一个设置(使用Swift):varhighScoreNumber:NSInteger=0varreturnValue:[NSInteger]?=NSUserDefaults.standardUserDefaults().objectForKey("food")as?[NSInteger]if(returnValue!=nil){highScoreNumber=returnValueasNSInteger}我尝试了这个代码和其他代码变体,我总是得到'NSInteger?'notconvertibleto'NSInteger'这是我第一次接触Swift,所以我是否在转换过程中漏掉

objective-c - 我可以自定义现有的 viewWithTag :(NSInteger) method for stringTag?

请帮助我,我一直在自定义一个UIView类以将NSString值设置为标签,但是我如何从View层次结构中获取该View。在UIView类中获取View的默认方法是viewWithTag:(NSInteger)。请看下面的代码#import@interfaceUIView(StringTag)@property(nonatomic,copy)NSString*tagString;@end#import"UIView+StringTag.h"#importstaticconstvoid*tagKey=&tagKey;@implementationUIView(StringTag)-(vo

ios - 为什么在 "numberOfSectionInTableView:"中使用 NSInteger 而不是 NSUInteger?

UITableView数据源方法numberOfSectionsInTableView:的返回类型为NSInteger。但是,UITableView的行数不能为负数;它有0行或更多行,那么为什么返回类型是NSInteger?这不允许与返回负整数相关的崩溃吗? 最佳答案 你不能检查(ifvar用一个无符号整数。这是选择一个的标准原因。使用无符号整数的唯一真正原因是如果您需要额外的空间来容纳更大的数字,并且您可以保证输入永远不会尝试小于零。 关于ios-为什么在"numberOfSectio

ios - NSInteger 前面的那个符号是什么?

这个问题在这里已经有了答案:Xcodeintellisensemeaningoflettersincoloredboxeslikef,T,C,M,P,C,K,#etc(2个答案)关闭8年前。当我们在Xcode中键入NSInteger时,它前面会显示一个符号,如:C、#、T等。那么这个符号代表什么?我分享了一个屏幕截图,有人可以指导我吗?

objective-c - 将 NSInteger 转换为 NSString

我试图用几个不同的部分制作一根绳子。下面是我现在所拥有的。我的代码中没有出现任何错误,但只要我运行它并执行触发它的事件,我就会得到EXC_BAD_ACCESS。是否有另一种方法可以将此NSInteger转换为NSString?NSString*part1,*part2,*tempString;NSIntegernum1;NSIntegernum2;part1=@"some";part2=@"text";tempString=[NSStringstringWithFormat:@"%@%@%@%@",part1,(NSString*)num1,part2,(NSString*)num2]

ios - 使用 NSInteger 而不是 int 的好处?

我试图了解在针对32位和64位架构进行开发时,开发会受到怎样的影响。根据我迄今为止的研究,我了解到int始终是4个字节,无论运行该应用程序的设备的体系结构如何。但是NSInteger在32位设备上是4个字节,在64位设备上是8个字节。我得到的印象是NSInteger是“更安全的”并且值得推荐,但我不确定这样做的原因是什么。我的问题是,如果您知道您使用的可能值永远不会很大(也许您正在使用它来索引一个包含200个项目的数组或将对象的数量存储在一个数组中),为什么将其定义为NSInteger?当你不使用它时,它只会占用8个字节。在这些情况下,将其定义为int是否更好?如果是这样,在什么情况下

iphone - 将 int 转换为 NSInteger

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:HowtoconvertAnNSIntegertoanint?我是iOS编程新手,如何将int转换为NSInteger。我找到了有关如何将NSInteger转换为NSNumber的引用资料,但我无法弄清楚。任何帮助,将不胜感激。谢谢。

iphone - int vs NSNumber vs NSInteger

我有一行代码会根据数据类型“day”和“1”以不同方式工作。我相信它是下面的,尽管我稍后会检查我的源代码。day=day+1;这有意义吗?会有什么区别? 最佳答案 NSInteger是描述整数的类型定义-但它不等同于64位平台上的int。您可以通过在Xcode中使用cmd并单击NSInteger来检查typedef。NSInteger在构建32位应用程序时定义为int,在构建64位应用程序时定义为long。大多数情况下,您可以将int替换为NSInteger,但在这样做时需要考虑一些事项。Apple's64-BitTransitio

ios - 如何在 Objective-C 中将 NSInteger 值转换为 int 值?

这个问题在这里已经有了答案:HowtoconvertAnNSIntegertoanint?(4个答案)关闭9年前。如何将NSUInteger值转换为objectiveC中的int值?以及如何在NSLog中打印NSUInteger值,我试过%@,%d,%lu这些都不起作用并抛出Ex-BadAccess错误。谢谢

ios - 64 位/32 位混合环境中的 NSInteger 和 NSUInteger

我在NSLog/NSAssert等调用中有相当数量的字符串格式说明符,它们使用%d和%u以及NSInteger(=32位上的int)和NSUInteger(=unsignedinton32bit)类型。当将应用程序转换为64位时,这会发出警告(当然),因为%ld%lu现在变成了long和unsigned长类型。简单地转换格式说明符当然会在32位构建中引入反向警告。因此,我认为唯一没有警告的解决方案是使用64位说明符,并在32位构建中出现警告的任何地方转换为64位值类型。但我想知道是否有专门针对NSInteger和NSUInteger类型的格式说明符可以在两种架构上工作而无需强制转换?