1 / 20

ТИПЫ

ТИПЫ. каждое имя в программе имеет ассоциированный с ним тип. Этот тип определяет:. структуру программного элемента, т. е. ту или иную интерпретацию памяти; множество допустимых значений; совокупность возможных операций с ним. В Object Pascal можно выделить следующие типы:. простые;

Download Presentation

ТИПЫ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ТИПЫ каждое имя в программе имеет ассоциированный с ним тип

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

  3. В Object Pascal можно выделить следующие типы: • простые; • структурированные; • указатели; • классы; • вариантный тип.

  4. Структурированные типы: • массивы; • строки; • записи; • множества; • файлы.

  5. Задание типа тому или иному элементу в программе необходимо для того, чтобы компилятор мог выделить соответствующую память и установить механизм доступа к самому элементу и его компонентам.

  6. ПРОСТЫЕ ТИПЫ • Простой тип определяет множество значений программного элемента, структура которого представляет собой единственную величину. • целые; • логические (булевы); • символьные; • перечни; • интервальные (диапазоны); • вещественные; • дата-время. Порядковые типы

  7. . Для порядковых типов существуют встроенные стандартные операции

  8. Физические типы Общие типы

  9. Целые числа • Целые числа могут записываться как в десятичной, так и в шестнадцатеричной системе счисления. • В последнем случае перед числом ставится знак $ • допустимый диапазон значений будет $00000000 ... $FFFFFFFF.

  10. Целые типы • Целые типы можно • складывать, • вычитать, • умножать. • Кроме того, можно выполнять действия, представленные в табл. 4.

  11. Физические типы следует применять, когда в первую очередь важны именно диапазон значений, зависящий от занимаемой памяти, и сам объем памяти. • Тип Integer является обобщением всех знаковых целых чисел, а Cardinal - всех беззнаковых. • Целый тип является порядковым типом, поэтому с ним возможны операции, приведенные в табл. 2.

  12. СИМВОЛЬНЫЕ ТИПЫ • Обычно символьные типы задают некоторые стандартные схемы кодирования и декодирования информации для обмена символьными данными. • Существуют две символьных схемы: • набор 8-битовых символов - ANSI-стандарт • набор 16-битовых символов - стандарт UNICODE, • В Delphi определены два физических символьных типа и один общий. • Два физических типа ANSIChar и WideChar реализуют соответственно ANSI-стандарт и UNICODE-схему. • Общий тип, именуемый Char, обычно соответствует типу AnsiChar. • Каждый символ имеет свой собственный порядковый номер. Номер символа можно извлечь с помощью функции Ord(C), где С - какой-либо символ.

  13. Операция присваивания для символьных типов • С :='ЛА '; - значение указывается в апострофах • с := #65; - 65 -порядковый номер символа А в наборе символов;

  14. ЛОГИЧЕСКИЕ ТИПЫ общийBoolean (1 байт) - Предпочтительней использовать Физические типы: • Другие типы именуются следующим образом: • ByteBool (1 байт), • WordBool (2 байта) и • LongBool (4 байта). • Переменным булевого типа можно присваивать только значения true или false. • Если память, соответствующая логической переменной типа Boolean, содержит 0, то ее значение равно false, • если в памяти содержится 1, то значение логической переменной равно true. Физические типы

  15. ЛОГИЧЕСКИЕ ТИПЫ • Переменные физических булевых типов интерпретируют содержимое памяти по-другому: • если в памяти содержится 0, значение переменной равно false, • при любом другом значении значение переменной равно true. • Однако функция Ord всегда возвращает значение 1, если переменная равна true, и • 0, если значение переменной равно false. • Таким образом, порядковый номер false равен 0, a true - 1.

  16. ТИП ПЕРЕЧЕНЬ • примеры объявления: Type EnumType = (Valuel, Value2, Value3); • Type MyColor = (RBed, Green, Blue); • тип перечень относится к порядковому типу, • Ord(Red) = 0, • Ord(Green) = 1, • Ord(Blue) = 2.

  17. ИНТЕРВАЛЬНЫЙ ТИП • Интервальный тип (диапазон) позволяет объявить переменные, содержащие информацию из некоторого заданного поддиапазона для какого-то исходного базового типа. • Базовый тип должен быть порядковым, кроме типа диапазон. • Синтаксис объявления интервального типа имеет следующий вид: • Туре D = MinValue. .MaxValue;, • где константы: MinValue и MaxValue определяют соответственно минимальное и максимальное значения среди всех возможных значений для данного типа • Например: Type Day : 1.. 31;.

  18. ВЕЩЕСТВЕННЫЙ ТИП

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

  20. ТИП ДАТА-ВРЕМЯ • Стандартный тип дата-время (TDateTime), определенный в модуле System, совпадает с типом Double. • Например, если определена константа типа дата-время 35065.75, то это число означает 1 января 1996 г., 18.00. • Способ преобразования целого числа в дату-время встроен в тип. • Целая часть числа типа TDateTime задает число дней, прошедшее с 30 декабря 1899 года, а дробная часть - прошедшую долю текущих суток. • Символьное представление типа дата-время определяется установками Windows. Различные функции преобразования находятся в модуле SysUtils.

More Related