2008年4月18日金曜日

サブルーチン(?)へのファイルポインタの引き渡し方法

perl使用時のサブルーチン(?)へのファイルポインタの引き渡し方法は、以下のとおり。

open ( WRITE_FILE, "> test.txt" );

&test_write ( *WRITE_FILE );

close ( WRITE_FILE );

sub test_write {
local(*FH) = @_;

printf( FH "Hello world\n");
}

[要調査項目]
(1) * は“型グログ”というらしい。詳細はチト不明。
(2) sub で記述している部分については、サブルーチンでいいのか? 関数とかではなく?
(3) localとmyの違い。なんか昔調べたのだけど忘れた。