有一个程序可以从文件中读取数据并将其添加到数组中:
#!/usr/bin/perl
use strict;
use utf8;
use warnings FATAL => 'all';
use Switch;
open(FILE, "+<prodazhi.txt");
binmode FILE, ":utf8";
binmode STDOUT, ":utf8";
# здесь функции, работающие с массивом
while (<FILE>) {
chomp;
($id, $name, $serial, $delivery, $amount, $cost, $date) = split '\t';
add_new($id, $name, $serial, $delivery, $amount, $cost, $date);
}
print 'Выберите действие';
$_ = <STDIN>;
print $_;
(函数add_new将数据添加到数组中)
有必要在“选择一个动作”行的输出之后,我可以输入动作的编号来对数组执行某个动作。但是,在我输入之前不会输出该行。那些。我输入数字“1”,然后它才输出“Enter action1”。在那之前,输出流似乎被阻塞了。
告诉我如何解决这个问题?
perldoc/perlvar/autoflush
$|
那是: