gpt4 book ai didi

objective-c - NSString.length 给出 EXC_BAD_ACCESS

转载 作者:行者123 更新时间:2023-12-03 16:49:18 24 4
gpt4 key购买 nike

我有以下代码:

NSArray *array = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:nil];

NSString *temp;
for (int i = 0; i < [array count]; i++)
{
temp = [array objectAtIndex:i];
NSLog(@"temp length = %@", [temp length]);
}

我在 NSLog 行收到 EXC_BAD_ACCESS 错误。我认为它在 [temp length] 位处出错。奇怪的是,我可以在 temp 上执行 NSString 的其他方法,并且它们工作正常,例如 [temp characterAtIndex:0]

我也尝试过执行[[array objectAtIndex:i]retain];,但这似乎没有帮助。

有谁知道为什么我会收到此错误?

<小时/>

编辑:事实证明它在 NSLog 处崩溃,因为它是 %@ 而不是 %lu。真正的问题是我在这篇文章中省略的其他代码。经过一番尝试后,我成功了。

最佳答案

根据我的理解,“%@”占位符用于对象指针,“length”返回“NSUInteger”,它不是指针。尝试使用“%lu”而不是“%@”。

关于objective-c - NSString.length 给出 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7863492/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com