Если не указана переменная результата то по умолчанию это
$_. Указатель файла по умолчанию
STDIN– стандартный ввод. Пример: while(<>) { print; }; # Прочитать и вывести весь файл STDIN У оператора '
<>' есть одна отличительная особенность. Если в командной строке нет никаких аргументов то читается стандартный ввод, если есть аргументы то они считаются именами файлов которые последовательно читаются. Если в угловых скобках записана переменная то содержимое этой переменной считается именем указателя файла или ссылкой на указатель файла. Если такого указателя не существует то содержимое переменной воспринимается как шаблон имен файлов и результат – имена файлов на диске подходящих по шаблону. Пример: while(<*.pl>) { print;}; # То же что и ls *.pl @files = <*>; # Массив @files содержит имена файлов в директории но лучше сделать:
@files = glob("*");т.к. внутри скобок можно использовать переменные.
Слияние констант. Как и С Перл выполняет возможные вычисления в период компиляции. Так подстановка символов после '\' , операция конкатенации строк, арифметические выражения содержащие только одни константы, все это делается в момент компиляции что существенно увеличивает скорость выполнения программы.
Целочисленная арифметика. По умолчанию Перл выполняет арифметику с плавающей запятой, но если вы укажете: use integer; то компилятор будет использовать целочисленную арифметику до конца текущего блока, хотя вложенный блок может это и отменить в своих пределах с помощью: no integer;
*Встроенные функции*
Встроенные функции используются как термы выражений и подразделяются на две категории: списковые операторы и унарные операторы. Это влияет на их приоритет по отношению к оператору ',' – запятая. Списковые операторы могут именть множество (список) аргументов, а унарные только один. Таким образом запятая завершает аргументы унарного оператора и разделяет аргументы спискового. Аргумент унарного оператора воспринимается обычно в скалярном контексте а спискового как в скалярном так и списковом причем скалярные аргументы идут первыми.
|