问题标签 [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.

0 投票
2 回答
5364 浏览

xcode - 将 NSInteger 存储在 Core Data 中

有什么方法可以跳过处理 NSNumber 并直接使用 NSInteger 吗?

0 投票
2 回答
195 浏览

iphone - isEqualToString 的问题:方法和 NSInteger

这是我的代码:

当我尝试在NSLog("count %d",count);没有任何信息的情况下让我的应用程序崩溃时。我还有另一个问题,if([source isEqualToString:element.source])我确定有时条件返回真......如何删除空格?像 php 中的 trim 函数?谢谢

0 投票
3 回答
3078 浏览

objective-c - 为什么我的代码与我一起初始化 NSInteger?

可能重复:
(Objective-)C 整数总是初始化为 0?

我有一个界面

然后在我的实现中,我只是使用 is as

它可以工作,即第一次执行此操作时,该值实际上为 0,即使我从未将其初始化为零。

是因为NSInteger的默认值是0吗?

0 投票
2 回答
21676 浏览

iphone - int、NSInteger 和 NSUInteger 的区别

和在Objective-C中int的主要区别是什么?NSIntegerNSUInteger

哪一个更适合在应用程序中使用,为什么?

0 投票
0 回答
326 浏览

objective-c - NSInteger 参数无效值

我有以下课程:

和实施:

我正在尝试像这样初始化 MyObj 的数组:

对于第一次迭代,当 x=0, y=0 myObj 按预期创建,但是当 x=1, y=0 在函数 initWithX 中我看到 'posX' 参数值为 1065353216。所以我用 ivar 得到了无效的 myObj 对象_x = 1065353216。我不明白为什么会这样?

0 投票
2 回答
300 浏览

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”实例后调用终止

上面的代码有什么错误?

提前感谢...

0 投票
1 回答
59674 浏览

iphone - 将 int 转换为 NSInteger

可能重复:
如何将 NSInteger 转换为 int?

我是 iOS 编程新手,如何将 int 转换为 NSInteger。我找到了有关如何将 NSInteger 转换为 NSNumber 的参考资料,但我无法弄清楚。任何帮助,将不胜感激。谢谢。

0 投票
3 回答
935 浏览

objective-c - NSInteger 始终为零

我有一个总是返回零的 NSInteger :( 我将它声明为:

合成:

然后在使用时NSLog(@"%d", level)总是返回 0,即使在之后

或者

我做错了什么?我 100% 肯定会加 1,level但不明白出了什么问题:(

编辑:

我使用这个 NSInteger 的 if 语句

这总是在第一个结束,即使在添加 1

0 投票
2 回答
3004 浏览

iphone - 如何将值从 NSString 转换为 NSInteger

我是 iPhone 开发的新手。

我想使用下面提到的过程从数据库中获取记录。

但是当我将搜索到的值传递searchDbAuthorId1 or searchDbQuoteId给一个方法时,它会显示一条BAD ACCESS消息。

我曾经NSLOG知道实际值。

以下是与%@

这些是我需要的正确值

和价值观%d

我得到了这些值

提前致谢。

0 投票
4 回答
46072 浏览

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?