<<
>>

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

Все данные в Перл это скаляры, массивы скаляров и хеши скаляров.

Скалярные переменные могут содержать числа, строки и ссылки.

Преобразование числа – строки происходит автоматически по умолчанию.

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

В Перл не существует типов «строка» или «число» или «файл» или что то еще.

Это контекстно зависимый полиморфный язык для работы с текстами.

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

В Перл существует два типа нулевых (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 – количество использованных.

Конструкторы скаляров.

Числа пишутся стандартно:

123

123.123

0.12

.12E-10

0xABCD # Шестнадцетиричная запись

0377 # Если 0 в начале – восьмеричная

123_456_123 # Так тоже можно для удобства чтения.

Строки ограничиваются одинарными (') или двойными (") кавычками:

'Ровняйсь, смирно!'

«Построемся и спасемся.»

Способов обозначения строк очень много. Плодробно смотрите описание оператора qq.

В хеше можно опускать кавычки если индекс не содержит пробелов.

Пример:

$var1{first} то же что и $var1{'first'}

Обратите внимание на то что перед первой одинарной кавычкой должен стоять пробел иначе строка воспримется как имя переменной так-как в именах разрешено использование одинарных кавычек.

Запрещается в кавычках применять зарезервированные литералы __LINE__ (номер текущей строки программы), __FILE__ (текущий файл).

Для обозначения конца программы можно применять литерал __END__

Весь последующий текст игнорируется, но его можно прочитать использую указатель файла DATA .

Слова в программе не поддающиеся ни какой интепретации воспринимаются как строки в кавычках поэтому рекомендуется имена меток и указателей файлов писать большими буквами для избежания возможного «конфликта» с зарезервированными словами.

В Перл есть возможность вставлять текст документа прямо в программу.

Так называемый "here-doc " (здесь текст) метод. Обозначается символами

<< | >>
Источник: Владимир Викторович Маслов. Введение в Perl. 2003

Еще по теме Скалярные значения.:

  1. § 24 Особое значение целого семейства в торгующем купечестве и в бывших податных сословиях. – Финансовое и хозяйственное значение семейного раздела. – Особое значение семейства в отправлении рекрутской повинности. – Семейная община у Индусов.
  2. § 8 Значение формы в договоре. – Римская стипуляция и правила иностранных законодательств. – Историческое значение формы в русском законодательстве. – Правила о совершении актов. – Отсутствие руководящего начала. – Колебания судебной прак- тики и наклонность ее к формализму. – Значение явки в актах договора. – Домашние акты. – Словесные соглашения. – Можно ли доказывать их свидетелями? – Гербовый сбор.
  3. § 40 Условия об очистках. – Понятие об очистке (garantie). – Практическое значение иска об очистке. Особенное значение вотчинной очистки (gar. reelle)
  4. § 3 Содержание обязательства. – Положительное и отрицательное. – Обязательство дать или исполнить. – Взаимное обязательство. – Нераздельные и делимые обязательства. – Действие возможное и невозможное; известное и неизвестное. – Разделительное обязательство и значение выбора. – Определение предмета родом, видом и особью. – Значение денег.
  5. § 37 История вотчинной записки в России. – Явка актов в приказах. – Справка. – Юридическое и финансовое ее значение. – Аналогия нашей формы с западными. – Изменение старой формы при Петре I. – Новый крепостной порядок и новое значение справки и отказа. – Форма нового отказа и ввода во владение
  6. § 84 Значение писцовых книг и межевых актов по делам специального межевания и отношение их к вотчинному праву. – Может ли разрешенный по межевым правилам вопрос о владении внутри общей дачи служить к предосужде- нию вотчинного права? – Случаи, в коих требуются доводы от перводачников. – Нынешнее значение писцовых книг как доказательства в делах вотчинных
  7. § 83 Историческое значение писцовых книг. – Писцовые книги как доказательство по межевым делам. – Отношение межевых доказательств к вотчинным. – Могут ли межевые акты служить к предосуждению вотчинных прав? Значение межевых актов и планов в спорных вотчинных делах. – Общее замечание об отношении вотчинного права к межевому
  8. § 4 Законные условия для вступления в брак. – Первое условие – свободное сознание сторон. – Понятие о принуждении. – Обычай женить и выдавать замуж в семье и в отношениях вотчинной власти. – Право государства принуждать к браку. – Историческое значение авторизации к браку. – Требование родительского согласия по иностранным законодательствам. – Ограничение свободы в браке со стороны государства и общины. – Постановления русского закона. – Хозяйственное значение брака в крестьянском быту и его пос
  9. ЗНАЧЕНИЕ
  10. Общее значение планеты
  11. § 1. Понятие и значение страхования
  12. Конкретное значение
  13. Расч?т значений аспектов
  14. Значение игр
  15. Значение игр
  16. § 3 Сущность и идея брака. – Нравственное его значение. – Таин- ство в браке. – Историческое развитие идеи брака. – Много- женство, многомужие и одноженство. – Идея, семейное, обще- ственное и религиозное значение брака в Древнем мире. – Религиозный обряд брака у древних. – Строгая форма брака. – Освящение брака в христианстве. – Церковное понятие о браке на Западе и Востоке. – Секуляризация брака и подчинение его гражданскому закону и суду после реформации и революции. – Брачный закон и суд в Р
  17. 1. Понятие и значение недействительности сделки
  18. § 1. Понятие и значение договора аренды
  19. ЗНАЧЕНИЯ ДОМОВ