我在以下 for 循环中收到“表达式结果未使用”警告。
NSInteger i = 0;
for ( i; i < tags.count; i ++) {
}
似乎我缺少一些关于 for 循环如何工作的基本知识,任何人都可以阐明这个警告的原因吗?
最佳答案
由于您在循环外声明了 i
,因此 for
的第一部分中的表达式 i
未被使用:
for ( i /* <<== This one */ ; i < tags.count; i ++) {
}
for
循环的语法允许您删除其三个表达式隔间中任何一个的内容。这应该可以解决问题:
for ( ; i < tags.count; i ++) {
}
事实上,你可以放弃这三个,使循环无限:
for ( ; ; ) {
...
if (some_condition) break;
...
}
注意:一般来说,您应该将循环变量声明为循环头的一部分。唯一的异常(exception)是当您需要在循环外使用 i
的最终值时。
关于objective-c - for 循环中的表达式结果未使用警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20161422/