Оқулық Қазақстан Республикасы Білім жəне ғылым министрлігі бекіткен Алматы, 2011 1


Динамикалық жадыны өңдеуге арналған стандартты функ-



бет190/210
Дата06.01.2022
өлшемі4,42 Mb.
#16437
түріОқулық
1   ...   186   187   188   189   190   191   192   193   ...   210
Байланысты:
boribaev-algoritmdeu

Динамикалық жадыны өңдеуге арналған стандартты функ-
циялар
Программа орындалу барысында динамикалық жады қалып-күйін бақылау қажет болуы мүмкін. Мұндай бақылау мақсаты – келесі бөлінетін, қажет мөлшердегі динамикалық ауданның мүм-кіндіктерін бағалау. Мұндай мақсаттар үшін Турбо Паскаль екі функция бар (параметрсіз).
MaxAvail;
Бұл функция динамикалық ауданның дəл осы мезетте бос ең үлкен бөлігінің байтпен берілген мөлшерін қайтарады. Осы мөлшер бойынша динамикалық жадының бөлінетін ең үлкен мөлшері жайлы айтуға болады.
Қайтарылатын тип мəні - longint.
TYPE ZAP=RECORD
FIELD1: STRING [20];
FIELD2: REAL;
END;
VAR P: POINTER;
BEGIN
...
IF MAXAVAIL THEN
WRITELN (‘HE ХВАТАЕТ ПАМЯТИ!')
ELSE
GETMEM(Р, SIZEOF(ZAP));
...

Екінші функция:


MemAvail;
Бұл функция динамикалық жадының бос байттарының жалпы санын қайтарады, демек, барлық бос бөліктердің мөлшері жəне бос динамикалық аудан мөлшері қосылады. Қайтарылатын тип мəні - longint.

20–1618 297



...
WRITELN( 'бос’, MEMAVAIL, ‘ байт' ); WRITELN(‘ең үлкен бос бөлік=’, MAXAVAIL, ‘байт' ); ...
Бұл шешім келесі жағдайға негізделген. Динамикалық аудан, “түйдек” (HEAP) деген аты бар арнайы бөлінген ауданда орналасады. Түйдек, программа іске қосылғаннан кейінгі бос жадыны толығымен немесе оның бір бөлігін алады. Түйдек мөлшері компилятордың директивасы арқылы беруге болады:


Достарыңызбен бөлісу:
1   ...   186   187   188   189   190   191   192   193   ...   210




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет