Концепция типов данных

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

При обработке данных на ЭВМ такая классификация еще более важна. В любом алгоритмическом языке каждая константа, переменная, выражение или функция бывают определенного типа.

В языке ПАСКАЛЬ существует правило : тип явно задается в описании переменной или функции, который предшествует их использованию.

 

Концепция типов языка ПАСКАЛЬ имеет следующие основные свойства:

1. любой тип данных определяет множество значений, к которому принадлежит константа, которые может принимать переменная или выражение, или вырабатывать операция или функция;

2. тип значения, задаваемого константой, переменной или выражением, можно определить по их виду или описанию;

3. каждая операция или функция требует аргументов фиксированного типа и выдает результат фиксированного типа. Отсюда следует, что транслятор может использовать информацию о типах для проверки вычисляемости и правильности различных конструкций.

Тип определяет:

1. возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;

2. внутреннюю форму представления данных в ЭВМ;

3. операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.

В языке ПАСКАЛЬ существуют скалярные и структурированные типы данных.

К скалярным типам относятся стандартные типы и типы, определяемые пользователем.

Стандартные типы включают целые, действительные, символьный, логические и адресный типы. Типы, определяемые пользователем - перечисляемый и интервальный.

Структурированные типы имеют четыре разновидности: массивы, множества, записи и файлы.

Кроме перечисленных, PASCAL включает еще два типа - процедурный и объектный.

Из группы скалярных типов можно выделить порядковые типы, которые характеризуются следующими свойствами:

1. все возможные значения порядкового типа представляют собой ограниченное упорядоченное множество;

2. к любому порядковому типу может быть применена стандартная функция Ord, которая в качестве результата возвращает порядковый номер конкретного значения в данном типе;

3. к любому порядковому типу могут быть применены стандартные функции Pred и Succ, которые возвращают предыдущее и последующее значения соответственно;

4. к любому порядковому типу могут быть применены стандартные функции Low и High, которые возвращают наименьшее и наибольшее значения величин данного типа.

В языке ПАСКАЛЬ введены понятия эквивалентности и совместимости типов. Два типа Т1 и Т2 являются эквивалентными (идентичными), если выполняется одно из двух условий:

1. Т1 и Т2 представляют собой одно и то же имя типа;

2. тип Т2 описан с использованием типа Т1 с помощью равенства или последовательности равенств. Например:

type T1 = Integer; T2 = T1; T3 = T2;

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: