Perl: Create a variable pointer to a built-in filehandle
I have a function that takes a filehandle for an argument. This is easy for filehandles that you create with open()
but gets more complex if you try to use one of the automatic filehandles. Using the *
syntax you can create a pointer to the symbol table for that entry.
$fh = \*STDIN;
$fh = \*STDOUT;
$fh = \*DATA;
Once it's a standard scalar variable it can easily be passed to a function.