Perlコーディング初心者質問スレ Part 44
■ このスレッドは過去ログ倉庫に格納されています
0241nobodyさん
2005/10/25(火) 20:18:09ID:acj/FLSv実際にプログラム test.pl を実行している様子です。
なぜ、ファイル data の最後の行が表示されてしまうのでしょうか。
最後の行の末尾には改行文字がないので、最後の行(内容は一文字のゼロ)を $line に読み込んだ直後に、
while を抜けるはずだと予測したのですが。
%cat test.pl
#! /usr/local/bin/perl
while ($line = <>) {
print $line;
}
%hexdump -C data
00000000 33 0a 32 0a 31 0a 30 |3.2.1.0|
00000007
%./test.pl < data
3
2
1
0
# 最後の行に改行文字を持たないファイルは、truncate コマンドを使って作成しました。
■ このスレッドは過去ログ倉庫に格納されています