- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在变量值方面遇到了一个奇怪的问题。这是代码(它是类方法的一部分):
MyAppDelegate *pDelegate = [[UIApplication sharedApplication] delegate];
SomeDictionaryData *appData = [pDelegate.theData retain];
NSLog(@"my instance var: %@",cardIndex); // outputs "my instance var: 4"
NSDictionary *currentCard = [[NSDictionary alloc] initWithDictionary:[appData.cards objectAtIndex:cardIndex]];;
// the above line breaks the app
[currentCard release];
[appData release];
我正在使用带有 objc_exception_throw
断点的调试器。 objectAtIndex
接收到的输入显示值 = 13760640。appData 的 cards
属性是一个 NSArray
,它显然没有十个百万以上的项目,所以我得到了一个越界错误。我尝试使用 (int)cardIndex
进行转换,但没有更好的结果。奇怪的是,其他一些类中的类似代码工作正常。
这是我想在整个应用程序中使用的一些数据,因此我有一个模型类,它在 AppDelegate 中初始化为 theData
,然后由不同的 ViewController 访问。在对其他某个 ViewController 进行一次成功访问后(该 ViewController 也确实保留/释放)出现此错误。
我们将不胜感激。
最佳答案
[cardIndex unsignedIntValue]
用于 objectAtIndex:
行。
您不能给 objectAtIndex:
一个指针,因为它需要一个无符号整数。
例如:
NSDictionary *currentCard = [[NSDictionary alloc] initWithDictionary:[appData.cards objectAtIndex:[cardIndex unsignedIntValue]]];
编辑:
这听起来像 cardIndex
是一个 int
但在某些地方它被设置为一个 NSNumber
实例。作为 hack,使用 [(id)cardIndex unsignedIntValue]
。如果这有效,则意味着您为 cardIndex
使用了错误的类型(它应该是 NSNumber,而不是 int
)。
关于ios - iphone nslog 损坏的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1325697/
我是 Mac OS 编程的新手。我想知道 NSLog 在哪里定义? 最佳答案 在NSObjCRuntime.h文件中: FOUNDATION_EXPORT void NSLog(NSString *f
我不明白这里发生了什么。我有一个按钮连接到 AppDelegate 中的以下操作: - (IBAction)openWindow:(id)sender { self.winCon = [[NS
#import int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePo
我有一个 Xcode 项目,我已经工作了几个月了。我从来没有遇到过 NSLog 问题,但升级到 Xcode 4.2 后,控制台上不会记录任何内容。我什至尝试将其放入 viewDidLoad 中:
首先,当我使用 nslog 记录数组的内容时,为什么数组中的某些对象(所有字符串)都有引号,而有些则没有? 日志将如下所示: "Item 1", "item 2", item3, "item4" 这引
我很不幸地提交了一个 NSLog 仍然处于事件状态的应用程序。它很少触发,但我想知道我的应用程序因此被拒绝的可能性有多大? 我不是在问如何抑制 NSLogs。我已经知道该怎么做了。它只是一个错误进入的
我正在尝试使用 NSLog 来打印控制台消息。问题是有时我在调用它时收到“EXC_BAD_ACCESS”错误 -(void)willRotateToInterfaceOrientation:(UIIn
我的 Mac OS X 应用程序中有以下代码行: NSLog(@"number of items: %ld", [urlArray count]); 我收到警告:“格式指定类型‘long’,但参数类型
与 NSLog 功能最接近的 Core Foundation 函数是什么? 最佳答案 CFShow() 类似,但没有前缀。或者,正如 wbyoung 所说,使用 NSLog()。如果您不想使用 Obj
NSNumber *weekNum = [dictionary valueForKey:@"inSeasonFor"]; NSDecimalNumber *newWeekNum = ([weekNum
我目前正在开发一个低功耗蓝牙应用程序,我想在其中使用 NSLog 来打印我收集到的信息。 这是我在 didUpdateValueForCharacteristic 方法末尾使用的代码,此时所有属性都已
当我尝试用它NSLog我的图像时; NSLog([images description]); 这出现了: 2012-06-05 10:31:38.801 Project1[1180:1a303] (
我如何准确地检测对象的坐标,例如名为“content”的 View ,并将其输出到日志中?感谢您的帮助! 最佳答案 你也可以这样做 NSLog(@"position: %@",NSStringFrom
-(void) print { NSLog(@"%i/%i", numberator, denominator); } Fraction *myFraction = [Fraction n
我有一部连接到 Xcode 的 iPhone。我在主页上有一个 NSLog(@"test")。当我从 Xcode 构建(运行)我的应用程序时,我看到它正在调试区域打印 test。 然后...我从设备屏
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 9 年前。 Improv
这个问题在这里已经有了答案: 关闭 10 年前。
我是 Objective-C 的新手,我开始学习简单的东西。在本例中,我想使用 * 符号创建一个 金字塔。 问题:每次打印 * 时,它都包含一个换行符。我怎样才能摆脱它来创建金字塔外观?我以为我必须添
我在 IBAction 中有以下代码。我想测量 AVSpeechSynthesizer 运行一个方向列表所花费的确切时间。但是,executionTime 会立即记录,而不是在循环结束时记录(返回不到
我想从两个日期之间添加的核心数据中检索所有条目。我正在使用 NSPredicate。由于我没有得到正确的结果,我尝试记录日期。它显示了以前的日期。谷歌搜索了一段时间后,我添加了 [dateFormat
我是一名优秀的程序员,十分优秀!