Добро пожаловать на наш сайт!

Сайт посвящен компьютерам, софту, программированию и вообще информационным технологиям.

Надеямся Вам у нас понравится.

 
 

Меню сайта

 
Введение в Perl

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

Слияние констант.
Как и С Перл выполняет возможные вычисления в период компиляции.
Так подстановка символов после '\' , операция конкатенации строк, арифметические выражения содержащие только одни константы, все это делается в момент компиляции что существенно увеличивает скорость выполнения программы.

Целочисленная арифметика.
По умолчанию Перл выполняет арифметику с плавающей запятой, но если вы укажете:
use integer;
то компилятор будет использовать целочисленную арифметику до конца текущего блока, хотя вложенный блок может это и отменить в своих пределах с помощью:
no integer;


*Встроенные функции*

Встроенные функции используются как термы выражений и подразделяются на две категории: списковые операторы и унарные операторы. Это влияет на их приоритет по отношению к оператору ',' – запятая. Списковые операторы могут именть множество (список) аргументов, а унарные только один. Таким образом запятая завершает аргументы унарного оператора и разделяет аргументы спискового.
Аргумент унарного оператора воспринимается обычно в скалярном контексте а спискового как в скалярном так и
списковом причем скалярные аргументы идут первыми.

Hosted by uCoz