比如下面这段代码会产生一个奇怪的错误,print() on closed filehandle FILE at d:\code\test.pl line 6.

sub testdir {
open FILE, ">>z:/zdd" ;
print FILE "Hello, world\n";
}

其实根本原因是open函数失败了,因为z:盘根本不存在,但是我们没有检查open的返回值,所以这个错误很隐讳,正确的写法应该是

sub testdir {
open FILE, ">>z:/zdd" or die $!;
print FILE "Hello, world\n";
}

这样错误信息就变成了:No such file or directory at d:\code\test.pl line 5.这样就一目了然啦!

相关文章:

  • 2021-08-11
  • 2022-12-23
  • 2021-11-07
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-07
相关资源
相似解决方案