Typy danych i ich klasyfikacja
Ze względu na swoją strukturę wszystkie typy można podzielić na typy proste i złożone.
TYPY
PROSTE ZŁOŻONE
PORZĄDKOWE STRUKTURALNE NIESTRUKTURALNE
(całkowite) a) tablicowy a) obiektowy
BYTE b) rekordowy b) wskaźnikowy
WORD c) plikowy c) proceduralny
SHORTINT d) zbiorowy
INTEGER
LONGINT
(rzeczywiste)
REAL
SINGLE
DOUBLE
EXTENDED
COMP
(znakowy) CHAR
(logiczny) BOOLEAN
(wyliczeniowy)
(okrojony)
(łańcuchowy) STRING
Opis typów
Byte - liczba całkowita z zakresu od 0 do 255
Word - liczba całkowita z zakresu od 0 do 65535 (zapisana na 2 bajtach)
ShortInt - liczba całkowita z zakresu od -128 do 127 (zapisana na jednym bajcie)
Integer - liczba całkowita z zakresu od -32768 do 32767 (zapisana na 2 bajtach)
LongInt - liczba całkowita o dużych wartościach zapisana na 4 bajtach
Real - liczba rzeczywista zapisana na 6 bajtach
Single - liczba rzeczywista zapisana na 4 bajtach
Double - liczba rzeczywista zapisana na 8 bajtach
Extended - liczba rzeczywista zapisana na 10 bajtach
Char - każdy element typu znakowego zajmuje jeden bajt pamięci. W bajcie tym jest pamiętany kod ASCII
Boolean - elementy typu logicznego są pamiętane na jednym bajcie pamięci jaki wartości 0 (False) lub 1 (True)
Typ wyliczeniowy - jeśli liczba elementów typu wyliczeniowego jest mniejsza lub równa 256 to każdy element (uściślając, to jego numer porządkowy) jest pamiętany w jednym bajcie. W przeciwnym przypadku każdy element zajmuje 2 bajty pamięci
Typ łańcuchowy - elementy tego typu zajmują 2 bajty pamięci, gdzie pierwszy oznacza ich maksymalną długość. Pierwszy bajt zawiera aktualną długość łańcucha (zapisaną jako wartość typu byte), a pozostałe bajty zawierają kody ASCII kolejnych znaków łańcucha.
Wszystkie typy proste są typami standardowymi i nie wymagają one definicji przez programistę, są predefiniowalne. Typy proste są podstawowymi typami języka TP. Zmiennej tego typu można przypisać tylko jedną wartość:
- jedną liczbę
- jeden znak
- jeden łańcuch
Za pomocą typów prostych określa się typy bardziej złożone, które zostaną kolejno omówione w dalszej części wykładu.