我正在经历这种奇怪的效果,在 rangeOfString 上调用 location 会返回一个非常大的值,而它不应该......
我的代码如下所示:
NSRange range = [string rangeOfString:subString];
NSLog(@"range is %@", NSStringFromRange(range));
这注销到range is {2147483647, 0}
无法弄清楚究竟是为什么。
可能导致这种情况的一些事情:
- 子字符串是使用 NSString 的 initWithBytes 方法从字节数组生成的
- 子字符串告诉我它是一个 NSCFString *,但也说“变量不是 NSString”
- 子字符串按预期登录控制台
非常感谢任何帮助
这里有一些让我觉得很奇怪的东西: