我已按照教程进行操作:
www.edumobile.org/iphone/iphone-programming-tutorials/a-simple-stopwatch-for-iphone
我得到 1 个错误和 1 个警告,都在同一行 71
for (int i = [timeArray count] – 1; i >= 0; i–) {
错误 – 预期的解析问题 ) 警告 – 未使用的实体问题 未使用的表达式结果
有什么想法有什么问题吗?
我已按照教程进行操作:
www.edumobile.org/iphone/iphone-programming-tutorials/a-simple-stopwatch-for-iphone
我得到 1 个错误和 1 个警告,都在同一行 71
for (int i = [timeArray count] – 1; i >= 0; i–) {
错误 – 预期的解析问题 ) 警告 – 未使用的实体问题 未使用的表达式结果
有什么想法有什么问题吗?
改变这个,
for (int i = [timeArray count] – 1; i >= 0; i–) {
到,
for (int i = [timeArray count] – 1; i >= 0; i--) {
编译器说它无法解析字符“-”。如果它无法识别 for 循环语法并对其进行解析,则会抛出此错误。
正如 ACB 所提到的,表达式需要是 i-- 而不是 i-。
只是几个注意事项 - Douglas Crawford 实际上建议避免使用 -- 和 ++ 来支持 i -= 1。虽然有点冗长,但毫无疑问它实际上做了什么而不是类似的东西
int example = --i + b;
可能会使一些人对表达式结束后的 i 值感到困惑。
此外,作为次要优化,您应该将数组的大小放在本地值中,而不是在每次循环迭代时调用 [timeArray count]
int timeArraySize = [timeArray count] - 1;
for (int i = timeArraySize; i >= 0; i -= 1) {
希望有帮助!