- Słowo kluczowe type
- Pozwala na utworzenie nowego typu danych (rekordu, klasy itp.).
Każda zmienna oraz stała musi być określonego typu zmiennych, tj. przyjmuje wartości z określonego, dopuszczonego zbioru wartości. Mogą one być zarówno proste jak i złożone. Dostęp do wartości pewnej danej może być pośredni lub bezpośredni. Rozróżnia się trzy zasadnicze rodzaje typów wartości:
- Proste (dostęp bezpośredni)
- Strukturalne (dane złożone, dostęp bezpośredni)
- Referencyjne (dostęp pośredni)
Typy proste
Typy porządkowe
Typy całkowite
shortint (-128..127) | 1 bajt | byte {0..255} |
smallint (-32768..32767} | 2 bajty | word {0..65535} |
longint, integer {-2147483648..2147483647} | 4 bajty | cardinal |
int64 {-263..263-1} | 8 bajtów |
Zmienna logiczna:
ByteBool, Boolean | 1 bajt |
WordBool | 2 bajty |
LongBool, BOOL | 4 bajty |
Typy rzeczywiste
Single | [4 bajty] | (1,5 * 10^-45 … 3,4 * 10^38) |
Real48 | [6 bajtów] | (2,9 * 10^-39 … 1,7 * 10^38) |
Double , Real | [8 bajtów] | (5,0 * 10^-324 … 1,7 * 10^308) |
Extended | [10 bajtów] | (3,6 * 10^-4951 … 1,1 * 10^4932) |
Currency stałoprzecinkowe | [8 bajtów] | (–922337203685477,5808 … 922337203685477,5807) |
Comp całkowite | [8 bajtów] | (-2^63+1 … 2^63-1) |
Zmienne znakowe i łańcuchowe
Zmienne znakowe | Wskaźniki na tablice znaków | Zmienne łańcuchowe | |||
---|---|---|---|---|---|
WideChar | 2 bajtowy znak UNICODE | PWideChar | wskaźnik do zakończonego zerem ciągu znaków typu WideChar. | WideString | ciągiem znaków WideChar o potencjalnie niegraniczonej długości |
AnsiChar | 1 bajtowy znak ANSI | PAnsiChar | wskaźnik do ciągu znaków typu Char zakończonego bajtem zerowym | AnsiString | ciągiem znaków AnsiChar o potencjalnie niegraniczonej długości |
Char | odpowiednik AnsiChar | PChar | Odpowiednik PAnsiChar | ShortString | Łańcuch znaków AnsiChar o z góry ustalonej długości, nie przekraczającej 255 zn. |
Zmienna deklarowana jako String jest zmienną typu AnsiString lub ShortString, zależnie od ustawienia przełącznika kompilacji $H:
Tablice
Tablice statyczna
Jest to zbiór zmiennych, do których odwołujemy się poprzez indeks:(numer porządkowy)
tablica1[14] := wartosc1;
Sposób deklarowania:
var
tablica1 : array [1..28] of integer;
//najmniejszy index to 1 największy to 28, w miejscu integer może być inny typ danych(np. inna tablica :D)
Tablice dynamiczna
Jest to tablica, której rozmiar możemy zmieniać podczas pracy programu.
Sposób deklarowania:
var
tablica2 : array of integer;
Sposób zmiany rozmiaru:
SetLength(tablica2,nowyrozmiar);