Языки

» Html
» Java Script

» PHP

» Perl

» ASP

» CGI

» Xml

» Dhtml

» VBScript

» Java

» Css

Уроки

» Photoshop

» Corel Draw

» Dreamwawer

» Flash MX

Скачать

» Программы

» Книги

Шаблоны

» Сайтов

» Flash

» Скрипты

Perl

 

» язык perl

     » Главная страница

     » Вернуться к содержанию ( Perl )

 

Скалярные значения

Все данные в Perl это скаляры, массивы скаляров и хеши скаляров. Скалярные переменные могут содержать числа, строки и ссылки. Преобразование числа — строки происходит автоматически по умолчанию. Скаляр может иметь только одно единственное значение, хотя это может быть ссылка на массив скаляров. Так как Perl сам преобразовывает числа в строки и наоборот, то программисту нет необходимости думать о том, что возвращает функция.

В Perl не существует типов “строка” или “число” или “файл” или что-то еще. Это контекстно зависимый полиморфный язык для работы с текстами.

Скаляр имеет логическое значение “TRUE” (истина), если это не нулевая строка или число не равное 0.

В Perl существует два типа нулевых (null) скаляров: определенные (defined) и неопределенные (undefined). Неопределенное значение возвращается, когда что-то не существует. Например, неизвестная переменная, конец файла или ошибка. С помощью функции defined() вы можете заранее обнаружить подобное состояние.

Количество элементов массива так же является скаляром и начинается символами $# подобно интерпретатору csh. Фактически $#var1 — это индекс последнего элемента массива. Нужно помнить, что первый элемент имеет индекс 0, поэтому количество элементов определяется как $#var1+1. Присвоение значения $#var1 изменит длину массива и разрушит “оставленные” значения. Присвоение значения элементу массива с индексом больше чем $#var1 увеличит размер массива, а присвоение ему нулевого списка — обнулит.

В скалярном контексте имя массива возвращает его длину (для списка возвращается последний элемент).

Например:

@var1 = (4, 3, 2, 1); # Присвоение значения элементам массива

$i = @var1; # Использование скалярного контекста

print $i; # Печать результата 4 - кол-во элементов

print @var1; # Списковый контекст, печать всех элементов.

Для принудительного получения скалярного значения удобно применять функцию scalar().

Например:

print scalar(@var1); # Вывод длины массива а не его значений

Хеш в скалярном контексте возвращает true, если существует хотя бы одна пара “ключ-значение”. Фактически возвращается строка типа 2/8, где 8 — количество выделенных “ячеек” памяти, а 2 — количество использованных.

Сохранить документ

Сохранить документ (.doc)

Распечатать документ

Напечатать

 

Следующий урок

 


Общение
» Чат

» Форум

Реклама 

Здесь может быть Ваша реклама

Поиск

» Поиск

Статистика 

Связь
» Web дизайнер

» Ваша реклама

» Отзывы

» О проекте



Сайт управляется системой uCoz