我有以下小型Perl(v5.10)程序:
use strict; my @nums; my $i = 0; while ($i < 5) { print "Enter number " . $i+1 . ": "; $nums[$i] = <STDIN>; $i++; } foreach (@nums) { chomp $_; print "$_\t"; } print "\n";
这是测试运行的结果:
1: 2 1: 1 1: 6 1: 3 1: 2 2 1 6 3 2
正如您所看到的,问题是提示用户输入的print语句未按预期运行.而不是“输入数字1:”或“输入数字3:”,e.t.c.,我得到“1:”.我没想到这是诚实的,因为我知道运算符在Perl中已经被重载用于字符串连接.我该如何解决这个问题?它的原因是什么?