|
||||||
Ввод-вывод.Ввод из STDIN.Ввод со стандартного ввода (через Perl-дескриптор файла STDIN) $a = <STDIN> ; #прочитать следующую строку В списочном контексте - все оставшиеся строки в виде списка, каждый элемент которого одна строка с \n @a = <STDIN> ; Чтение строк по одной:
while(defined($line_ = <STDIN>)) {
# обработка строк
}
Операция чтения скалярного значения из <STDIN> в $_ и использование этого значения в качестве переменной цикла:
while(<STDIN>) { # как "while(defined($_ = <STDIN>))"
chomp; # как "chomp($_)"
# другие опрации с $_
}
Ввод из операции ромбОперация похожа на <STDIN>, однако, она читает данные из файлов, заданных в командной строке при вызове программы. Программа test:
#!/usr/local/bin/perl -w
while (<>) {
print $_;
}
Вызов: test file1 file2 file3 "ромб" работает с массивом @ARGV:
@ARGV = qw(aa bb cc);
while (<>) {
print "this line is: $_";
}
Вывод в STDOUTИспользуются стандартные функции print и printf. print - обычный вывод.print - обычная функция, которая принимает список аргументов, а возвращает значение истина или ложь.
$a = print("hello", " world", "\n");
Иногда нужно вводить скобки: print (2+3), "hello!"; # неверно, 5 print ((2+3), "hello!"); # верно, 5hello print 2+3, "hello!"; # верно, 5hello printf - форматированный вывод.Пример: printf "%15s %5d %10.2f\n", $s, $n, $r; |
||||||
|
||||||