|
||||||||||||||||||||||||||||||||||||||||
Скалярные типы данных.Скаляр - это простейший тип данных Perl. В Perl числа и строки используются практически как взаимозаменяемые понятия.
Числа.В Perl для всех чисел используется один и тот же внутренний формат - значения с плавающей запятой двойной точности. Литералы с плавающей запятой.Литерал - константа. Примеры: 1.25 7.25e45 -12e-24 -1.2E-23 Целочисленные литералы.Пример: 12 15 -2004 3485 Восьмиричные числа начинаются с нуля, а шестнадцатиричные - с 0x или 0X. Пример: 0377 -0xff Строки.Строки - последовательности символов. Символ - 8-битовое значение из 256-символьного набора (при этом сивол NUL ничего особенного , в отличии от C, собой не представляет). Строки в одинарных кавычках.Для экранирования одинарной кавычки используется обратная косая черта. Для вставки \ - ее нужно заэкранировать. Примеры: 'hello' 'don\'t' '' 'silly\\me' 'hello there' Строки в двойных кавычках.Обратная косая черта может задавить определенные управляющие символы и вообще любой символ в 8 и 16 - ричном формате: "hello world\n" "new \177" # new, пробел и символ удаления "coke\tsprite"
Скалярные операции.Операции над числами.2 + 3 5.1 - 2.4 3 * 12 10./3 10%3 2**3 Опериции логического сравнения <, <=, ==, >=, >, !=. Операции над строками.Канкатенация строк: "hello" . "world" 'hello world' . "\n" # "hello world\n" Операции сравнения строк: eq, ne, lt, gt, le, ge. Операция повторения строки: "fred" x 3 "barney" x (4+1) (3+2) x 4 #"5555"Приоритет и ассоциативность опреаций. Числа в строки и обратно. Если строковое значение используется как операнд в операции с числами, Perl автоматически преобразует эту строку в цифровое значение: " 125.45fred" преобразуется в 125.45 # если нет -w "fred" - 0 В противном случае числовое значение конвертируется в строку. "X" . (4 * 5) # "X20" Скалярные переменные.Имя скалярной переменной - $ и набор буквы $a. Скалярные операции и функции.Примеры: $b = 4 + ($a = 3); $d = $c = 5; Операции присваивания с вычислением.Примеры: $a += 5; $b *=3; $str .= " "; Автоинкремент и автодекремент.++$a; $c++; --$a; $a--; Функции chop и chomp.Интерполяция скаляров в строках.Если строковый литерал взят в двойные кавычки, в нем нобходимо выполнить интерполяцию переменных. $a = "fred"; $b = "some text $a"; # "some text fred" $c = "no such variable $what"; # "no such variable" $x = '$fred'; $y = "hey $x"; # 'hey $fred' $fred = 'hi'; $barney = "a test of " . '$fred'; #'a test of $fred' $barney1 = "a test of \$fred"; #'a test of $fred' Разделитель имени переменной - {} $barney = "It is ${fred}day"; <STDIN> как скалярное значение.Используется дескриптор <STDIN>. $a = <STDIN> chomp($a);или chomp($a = <STDIN>); Вывод при помощи функции print.print("hello world\n"); print "hello world\n"; Значение undef.До присваивания значения переменные имеют значения undef. При работе с ключем - w вы получите предупреждение. |
||||||||||||||||||||||||||||||||||||||||
|