Тәттібеков Қ. С. Раимбаева С.Ә. С/С++ тілінде программалау негіздері



Pdf көрінісі
бет50/79
Дата15.11.2023
өлшемі1,39 Mb.
#124059
түріПрограмма
1   ...   46   47   48   49   50   51   52   53   ...   79
stdlib.h
> кітапханасында орналасқан: 
1)
void*malloc(unsigned s) – ұзындығы s байт болатын көрсеткішті 
динамикалық жады аймағының басына қайтарады, сәтсіз болған жағдайда 
NULL қайтарады; 
2)
void*calloc(unsigned n, unsigned m) – әрқайсысының ұзындығы m байт 
болатын n элементті орналастыру үшін көрсеткішті динамикалық жады 
аймағының басына қайтарады, сәтсіз болған жағдайда NULL қайтарады; 
3)
void*realloc(void *p,unsigned s) – алдын ала ерекшеленген динамикалық 
жадыны s байт-қа дейін өзгертеді, р – өзгеретін блоктың басының адресі, 
сәтсіз болған жағдайда NULL қайтарады; 
4)
void *free(void *p) – алдын ала ерекшеленген динамикалық жадының 
бөлігін босатады, р- бөлік басының адресі. 
Мысалы, int *u=(int*)malloc(sizeof(int)); //байтпен берілген қажетті 
жадының саны функцияға беріледі, өйткені функция void* типті мәнін 
қайтарады, демек оны көрсеткіш (int*) типіне түрлендіру қажет. 
free(u); //бөлінген жадыны босату
 
 
6.2 Нұсқаушыларға операциялар қолдану.
Көрсеткіштер мәндерін өзгертетін өрнектер мен операторлар мәндерін 
жазғанда, басты ережені ескеру қажет: көрсеткіш мәнінің өзгеру бірлігі оған 
сәйкес тип өлшемі болып табылады.
Бұл ережені жоғарыда көрсетілген көрсеткіштерге қолданайық.


75 
рti = pti + l; немесе pti++; 
операторларының орындалуы pti көрсеткішінің мәнін 2-ге өзгертеді, 
нәтижесінде оның мәні FFC2 тең болады. рti -- операторы орындалғанда; 
көрсеткіш мәні 2-ге азаяды және оның мәні FFBE тең болады. 
Басқа типті көрсеткіштер үшін осыған ұқсас іс-әрекеттер орындалады: 
ptc++; көрсеткіш мәнін 1-ге ұлғайтады; 
ptf++; көрсеткіш мәнін 4-ке ұлғайтады. 
 
Нұсқаушыларды функция параметрлерін беру үшін қолдану. 
Функцияларды пайдалану ережелерін қарастырсақ, Си тілінде шақырылатын 
функцияның формалды параметрлеріне шақыратын программадан фактілік 
параметр мәндерін тек біржақты ғана жіберу мүмкін. Өрнекте операнд 
ретінде қолданылатын қайтарылатын мәнді функцияның өзі береді. Осыдан 
шығатын ереже: функция орындалуы кезінде шақыратын программада 
айнымалылар мәні өзгермейді. Бірақ, егер функция параметрлері ретінде 
көрсеткіштер қолданылатын болса, бұл ережені ескермеуге болады.
Келесі 
мысалда 
swap() 
функциясы 
аргумент 
бойынша 
өз 
көрсеткіштерімен берілген, екі айнымалы шамасының мәндерін ауыстыруға 
мүмкіндік береді.


Достарыңызбен бөлісу:
1   ...   46   47   48   49   50   51   52   53   ...   79




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

    Басты бет