2.1 Delphi –дегі деректер типі
Object Pascal тілінде типтер маңызды роль атқарады.
Delphi-де қолданылатын Object Pascal тілінің типтерінің
мәні айтарлықтай ескен, яғни олардың көмегімен
программистің негізгі құралы кластар анықталады.
Жалпы деректер типтерін екi топқа
бөлiп қарастырамыз: қарапайым және күрделі типтер(кесте 1).
Кесте 1 - Деректер типтері
Қарапайым типтер(скалярлық) |
Күрделі типтер(құрылымдық) |
Сандық |
Жолдық |
логикалық |
массивтер |
символдық |
жиындар |
санаулы |
файлдық |
нұсқағыштық |
|
Сандық - типті деректер(кесте 2 -3)
Сандық – типтер ондық санау жүйесіндегі
сандар: 0, 1,2, 3, 4, 5, 6, 7, 8, 9 – цифрлары арқылы беріледі.
Ал, он алтылық санау жүйесіндегі сандарды жазу үшін олардың
алдына $ -символы қойылады: $1FA.
Кесте 2 - Бүтін сандық типтер
Тип |
Ұзындығы |
Мәндерінің диапазоны |
integer |
4 байт |
-2147483648
... 21474833647 |
Cardinal |
4 байт |
0 ...
4294967295 |
shortint |
1 байт |
-128 ...127 |
Smaillint |
2 байт |
-32768 ...
32767 |
byte |
1 байт |
0 ..
255 |
word |
2 байт |
0 ..
65535 |
longint |
4 байт |
-2147483648
.. 2147483647
|
Int64 |
8 байт |
-9223372036854775808..9223372036854775807; |
Longword |
4 байт |
0..4294967295; |
Кейде нақты сандарды экспоненциальды түрде жазуға
болады. Экспоненциалды бөлiм
Е символынан(мантисса) тұрады:
5.18Е+02
= 518 =
5.18*102
10Е-03 = 0.01= 10*10-3
Кесте 3 - Нақты сандық типтер
Тип |
Ұзындығы |
Цифрлар саны |
Мәндерінің диапазоны |
|
Real48 |
6 байт |
11-12 |
2.9e-39 .. 1.7e+38 |
|
Real |
8 байт |
15-16 |
5.0e-324 .. 1.7e+308 |
|
single |
4 байт |
7-8 |
1.5e-45 .. 3.4e+38 |
|
double |
8 байт |
15-16 |
5.0e-324 .. 1.7e+308 |
|
extended |
10байт |
19-20 |
3.6e-4951 .. 1.1e+4932 |
|
comp |
8 байт |
19-20 |
-2e63 .. 2.e63 |
|
Currency |
8 байт |
19-20 |
-922337203685477.5808..922337203685477.5807 |
|
Символдық - типті деректер
Символдық типтегi деректер
апострофқа алынған символдар(сhar),
жолдық шамалар(string). Мысалы, символдық деректер:
‘a’, ‘xyz’, ‘F2c’ . Символдық
типті деректермен: салыстыру, біріктіру
және т.б. жолдарды өндеу амалдар орындалады. Бұл типтің мәндері
ASCII, ANSI, Unicode кестелеріндегі символдар
болады(кесте 4).
Тип |
Жолдың макс ұзындығы |
Ескерту
|
String, ShortString, |
255 |
|
AnsiString; |
231 |
8
биттік |
Сhar, AnsiChar, WideChar, |
1 |
0...255 |
WideString, |
230 |
Unicode |
Логикалық - типті деректер
Математиканың ерекше бөлiмi
логиканы ашқан ағылшын математигi Д.Бульдiң есiмiне
байланысты логикалық типтi деректерді буллевтiк(bollean)
деп атайды. Паскаль тiлiнде логикалық деректерге: true(ақиқат)
және false(жалған) логикалық
тұрақтылар жатады. Логикалық тұрақтылардан және операциялардан - логикалық
өрнектер құралады. type Boolean =
(False, True);
Деректердің санаулы типiн қолданушы анықтайды,
оларды кейде шектеулі деп атайды және интервалды типтер деп аталады.
Санаулы типті анықтау үшін оның мәндері алдын ала
белгілі болу керек.
Мысалы, мәнi
гүлдер тiзiмi болатын Flowers санаулы типiнiң жазылуы:
Type
Flowers=(rose, lily, iris, aster);
Num,
Litter - интервалды типтердiң
сипатталуы:
Type
Num=1..100; {1-ден 100-ге дейiнгi бүтiн
сандар}
Litter=’a’..’z’; {a-мен z -аралығындағы
латын әрiптерi}
Құрылымды
типтер - қарапайым типтiң бiрiктiрiлген түрi, оларға
массивтер, жолдық шамалар, жиындар, жазбалар, файлдар жатады.
Күн және уақыт типі
Күн, уақыт
типі TdataTime стандартты идентификаторымен беріледі, ол уақытты және
күнді анықтауға арналған. Жадыдағы көлемі 8
байт орын алады.
Күнмен және уақытпен жұмыс істеу үшін
төмендегідей функцияларды пайдаланылады:
Function Date : TDateTime; // ағымдағы күнді
береді;
Function DateToStr
(D: TDateTirae) : String; // күнді символдар жолына түрлендіреді.
Function DateTimeToStr
(D: TDateTime) :
String; // күн мен
уакытты символдар жолына түрлендіреді;
Function FormatDateTime
(Format: String; Value : TDateTime)
: String; // күн мен уақыт Format параметрінің спецификаторына сәйкес Value
параметрінен символдар жолына түрлендіреді.
Function Now :
TdateTime // ағымдағы күн мен
уақытты береді;
Function Time :
TdateTime; // ағымдағы
уақытты береді;
Function TimeToStr (Т: TDateTime) : String; // уақытты
жолға айналдырады;