我正在完成一些Exercism练习。当我尝试使用变量作为范围的边界时,我遇到了一个问题。我正在处理的代码如下:
pub fn test(start: i32, end: i32) {
println!("{}-{}", start, end);
for n in start..end {
println!("IN LOOP: {}", n);
}
}
fn main() {
test(7, 5);
}
当我尝试使用任何start
和end
参数集调用此函数时,就会发生此问题。我可以看到第一个println!
调用的输出,但是“ IN LOOP”打印永远不会运行。如果我将for n in (start..end)
这一行替换为for n in (3..0)
,则它将成功运行。我很好奇为什么我似乎无法创建一个受变量限制的范围。