open FILE '<$file' or die $! ; #这样就不可以,因为$file不会被解释成变量内插。同样<也不会被解释成输入符号。
文件句柄作参数
假设有一个函数test,它有一个参数,是某个文件句柄,那么该如何传递这个参数呢?
方法一,传递参数时,在句柄前面加*
sub main {
open FILE, '+<', 'test.data' or die $!;
&test(*FILE);
close FILE;
}
方法二,使用open my $FILE的形式打开文件
sub main {
open my $FILE, '+<', 'test.data' or die $!;
&test($FILE);
close $FILE;
}









