此次文章比较短,就记录我犯的一个错误,开门见山(大佬请忽略)
for mut k in 0..n {while xxx {k += 1;}yyy;
}
期望的逻辑是对k循环,但是在循环中,如果满足xxx条件,则k直接增加1.
同样开门见山,这个逻辑的bug在于,不管while跳过多少次k,在for中,k雷打不动从0每次递增1.
正确的写法可以采用别的方式,比如:
let mut k = 0;
while k < n {while xxx {k += 1;}yyy;k += 1;
}
应该是我这几年造的最逆天的bug了…