问题标签 [nsinteger]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xcode - 将 NSInteger 存储在 Core Data 中
有什么方法可以跳过处理 NSNumber 并直接使用 NSInteger 吗?
iphone - isEqualToString 的问题:方法和 NSInteger
这是我的代码:
当我尝试在NSLog("count %d",count);
没有任何信息的情况下让我的应用程序崩溃时。我还有另一个问题,if([source isEqualToString:element.source])
我确定有时条件返回真......如何删除空格?像 php 中的 trim 函数?谢谢
objective-c - 为什么我的代码与我一起初始化 NSInteger?
我有一个界面
然后在我的实现中,我只是使用 is as
它可以工作,即第一次执行此操作时,该值实际上为 0,即使我从未将其初始化为零。
是因为NSInteger的默认值是0吗?
iphone - int、NSInteger 和 NSUInteger 的区别
和在Objective-C中int
的主要区别是什么?NSInteger
NSUInteger
哪一个更适合在应用程序中使用,为什么?
objective-c - NSInteger 参数无效值
我有以下课程:
和实施:
我正在尝试像这样初始化 MyObj 的数组:
对于第一次迭代,当 x=0, y=0 myObj 按预期创建,但是当 x=1, y=0 在函数 initWithX 中我看到 'posX' 参数值为 1065353216。所以我用 ivar 得到了无效的 myObj 对象_x = 1065353216。我不明白为什么会这样?
iphone - Iphone 应用程序因未捕获的异常“NSInvalidArgumentException”而终止
我有一个应用程序,我在其中使用此代码将数据保存在本地首选项中。
当我运行应用程序时,我收到如下所示的错误消息。
*由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'-[UIControlTargetAction setInteger:forKey:]:无法识别的选择器发送到实例0x181dd0'*第一次抛出调用堆栈:(0 CoreFoundation 0x35f08c7b exceptionPreprocess + 114 1 libobjc.A.dylib 0x30186ee8 objc_exception_throw + 40 2 CoreFoundation 0x35f0a3e3 -[NSObject(NSObject) doesNotRecognizeSelector:] + 98 3 CoreFoundation 0x35eaf467 __转发+ 506 4 CoreFoundation 0x35eaf220 _CF_forwarding_prep_0 + 48 5 Congnitive_Appointment_Timer 0x0000d03d -[Set_Routine_Screen radio_button:] + 252 6 CoreFoundation 0x35eada43 -[NSObject(NSObject) performSelector:withObject:withObject:] + 26 7 UIKit 0x3384affor0-[应用程序 UI 发送 0x3384affor2 :] + 136 8 UIKit 0x3384ae88 -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 40 9 UIKit 0x3384ae50 -[UIControl sendAction:to:forEvent:] + 52 10 UIKit 0x3384aaa0 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 536 11 UIKit 0x3384b5cc -[UIControl touchesEnded:withEvent:] + 460 12 UIKit 0x3383ceb0 -[UIWindow _sendTouchesForEvent:] + 588 13 UIKit 0x3383c4e4 -[UIWindow sendEvent:] + 396 14 UIKit 0x3381fc9c -[UIApplication sendEvent:] + 452 15 UIKit 0x3381f3b4 _UIApplicationHandleEvent + 6824 16 GraphicsServices 0x35262c88 PurpleEventCallback + 1048 17 CoreFoundation 0x35e9a5cb] + 452 15 UIKit 0x3381f3b4 _UIApplicationHandleEvent + 6824 16 GraphicsServices 0x35262c88 PurpleEventCallback + 1048 17 CoreFoundation 0x35e9a5cb] + 452 15 UIKit 0x3381f3b4 _UIApplicationHandleEvent + 6824 16 GraphicsServices 0x35262c88 PurpleEventCallback + 1048 17 CoreFoundation 0x35e9a5cbCFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION + 28 18 CoreFoundation 0x35e9a589 __CFRunLoopDoSource1 + 164 19 CoreFoundation 0x35e8c835 __CFRunLoopRun + 580 20 CoreFoundation 0x35e8c50b CFRunLoopRunSpecific + 226 21 CoreFoundation 0x35e8c419 CFRunLoopRunInMode + 60 22 GraphicsServices 0x35261d24 GSEventRunModal + 196 23 UIKit 0x3386557c -[UIApplication _run] + 588 24 UIKit 0x33862558 UIApplicationMain + 972 25 Congnitive_Appointment_Timer 0x00002c19 main + 72 26 Congnitive_Appointment_Timer 0x00002b98 start + 52 )在抛出“NSException”实例后调用终止
上面的代码有什么错误?
提前感谢...
iphone - 将 int 转换为 NSInteger
可能重复:
如何将 NSInteger 转换为 int?
我是 iOS 编程新手,如何将 int 转换为 NSInteger。我找到了有关如何将 NSInteger 转换为 NSNumber 的参考资料,但我无法弄清楚。任何帮助,将不胜感激。谢谢。
objective-c - NSInteger 始终为零
我有一个总是返回零的 NSInteger :( 我将它声明为:
合成:
然后在使用时NSLog(@"%d", level)
总是返回 0,即使在之后
或者
我做错了什么?我 100% 肯定会加 1,level
但不明白出了什么问题:(
编辑:
我使用这个 NSInteger 的 if 语句
这总是在第一个结束,即使在添加 1
iphone - 如何将值从 NSString 转换为 NSInteger
我是 iPhone 开发的新手。
我想使用下面提到的过程从数据库中获取记录。
但是当我将搜索到的值传递searchDbAuthorId1 or searchDbQuoteId
给一个方法时,它会显示一条BAD ACCESS
消息。
我曾经NSLOG
知道实际值。
以下是与%@
这些是我需要的正确值
和价值观%d
我得到了这些值
提前致谢。
objective-c - 枚举值:NSInteger 还是 int?
tl;博士版本
因此,在声明枚举时,如何保证枚举常量的数据类型是 NSUInteger 而不是 unsigned int:
NSUInteger 的 typedef 似乎没有以任何方式与 enum 声明相关联。
完整版本
我正在阅读 Apple 的64-Bit Transition Guide for Cocoa以获取有关枚举值的一些指导,然后我提出了一个问题。这是枚举常量部分的(冗长)引用,强调我的:
枚举(enum)常量的一个问题是它们的数据类型经常是不确定的。换句话说,枚举常量是不可预测的 unsigned int。使用传统构造的枚举,编译器实际上会根据它找到的内容来设置底层类型。基础类型可以是(有符号的)int 甚至 long。举个例子:
编译器查看此声明,并找到分配给成员常量之一的负值,声明枚举 int 的基础类型。如果成员的值范围不适合 int 或 unsigned int,则基本类型默默地变为 64 位(long)。因此,定义为枚举的基本类型的量可以悄悄地改变大小以符合枚举中的值。无论您是编译 32 位还是 64 位,都可能发生这种情况。不用说,这种情况给二进制兼容性带来了障碍。
为了解决这个问题,Apple 决定在 Cocoa API 中更明确地说明枚举类型。现在,头文件不再根据枚举声明参数,而是单独声明枚举的类型,其大小可以指定。枚举的成员及其值像以前一样被声明和分配。例如,而不是这个:
现在有这个:
枚举类型是根据 NSInteger 或 NSUInteger 定义的,以使基本枚举类型能够在 64 位体系结构上支持 64 位。
我的问题是:鉴于 typedef 似乎没有明确地与枚举声明绑定,如何知道它们的数据类型是 unsigned int 还是 NSUInteger?