"Дмитрий Леонов. Использование Perl в интернет-технологиях" - читать интересную книгу автора sub func{...}
$fref1 = \func; $fref2 = sub {...}; # Ссылка на анонимную функцию Используется эта ссылка как $fref1->(список аргументов). Ввод-вывод Ввод с консоли осуществляется с помощью оператора STDIN>: $a = STDIN>; # считывает следующую строку до символа #перевода строки # (точнее, до значения, присвоенного переменной $/) # либо undef, если строк больше нет @a = STDIN>; # считывает все строки до завершения ввода (обычно - # нажатие Ctrl-Z); каждая строчка будет завершаться # символом перевода строки while(STDIN>) {...} #последовательно считывает строки в #встроенную переменную $_. Вывод на консоль осуществляется с помощью функции print, форматированный вывод - с помощью printf, полностью аналогичной соответствующей функции С. Если у print не указан параметр, выводится содержимое встроенной переменной $_. Для ввода из файлов, перечисленных в командной строке скрипта, используется операция >: Если в качестве параметров передано несколько имен файлов, операция > считает их всех последовательно. Для файлового ввода-вывода сначала необходимо связать с файлом дескриптор. Стандартные дескрипторы STDIN, STDOUT, STDERR уже связаны со стандартным вводом, стандартным выводом и стандартным выводом ошибок, кроме того, существует специальный дескриптор DATA, позволяющий считать текст, следующий после символов __END__ из файла, в котором находится сама программа. Для открытия дополнительных дескрипторов используется функция open: open(FILE1, "filename"); # открывает файл для чтения open(FILE2 ">filename"); # открывает файл для записи open(FILE3, ">>filename"); # открывает файл для добавления При неудачном открытии файла функция open возвращает значение "ложь", так что правилом хорошего тона является проверка этого значения: open (FILE, "filename") || die "cannot open file: $!"; Функция die вызывает аварийное завершение программы, переменная $! содержит строку с описанием последней ошибки. После завершения работы файл необходимо закрыть: close (FILE); Имена дескрипторов не начинаются с каких-то специальных символов, и общепринято вводить их заглавными буквами - просто, чтобы отличить от обычных переменных. Далее их можно использовать в сочетании с операцией > для ввода: |
|
|