使用以下代码作为参考......
#!/usr/bin/perl
use strict;
use warnings;
my $counter = 0;
until ($counter == 10){
$counter++;
}
print $counter;
..通过这样做,$ counter变量可以在until循环之外访问,因此运行它将打印" 10"。
然而,它一直在唠叨我.. 我如何声明$ counter varible,并遵守'使用警告' (可能是严格的?),但只能在until循环中访问它。
虽然我不是专家..现在已经用perl编写了几年,本能地,以下内容应该有效......
#!/usr/bin/perl
use strict;
use warnings;
until (my $counter == 10){
$counter++;
}
但似乎没有首先将$ counter声明为数值,并且因为我们在表达式中使用了==,所以会打印以下警告。
Use of uninitialized value $counter in numeric eq (==) at test.pl line 5.
我知道这似乎是肛门。但我必须满足我的预感......!
答案 0 :(得分:2)
for ( my $counter = 0; $counter != 10; $counter++ ) {
...;
}
或者更好,a counting loop:
for my $counter ( 0 .. 9 ) {
...;
}