我想用Perl來計算消息中字符出現的頻率。例如,如果字符「a」在消息中出現10次,則頻率將爲10.爲此,我使用getc函數一次從FILE一個字符讀取消息。這是我寫的片段。我知道這是非常基本的。但是,當我編譯,我得到一個錯誤:爲什麼我的程序使用Perl的getc函數無法正常工作?
詳情:
#!/usr/bin/perl
use strict;
use warnings;
my $input=$ARGV[0];
open(INPUT,"<$input");
while(<INPUT>
{
my $c=getc(INPUT);
print $c."\n";
}
close(INPUT);
我得到下面的錯誤,當我嘗試編譯:
Use of uninitialized value in print at AccessChar.pl line 13, <INPUT> line 1.
我不能圖out,這個腳本有什麼問題。有人可以幫我解決這個問題嗎?
我甚至嘗試過使用getc
INPUT而不是getc(INPUT)
。我認爲運行此腳本時不需要包含任何其他軟件包。
您在該代碼段(在'while行中)出現語法錯誤。 – Mat
'getc'不工作...噢,是的。 –