Функциялар


Funktsiyalar parametrlari xususiyatlari



Download 227 Kb.
bet16/18
Sana09.07.2021
Hajmi227 Kb.
#113859
1   ...   10   11   12   13   14   15   16   17   18
Bog'liq
C Funksiyalar

Funktsiyalar parametrlari xususiyatlari.

Funktsiya prototipida, yoki aniqlash sarlavxasida ko’rsatilgan parametrlar formal parametrlar deyiladi, yoki shunday parametrlar deyiladi , fuktsiyani chaqirishda ko’rsatilgan parametrlar faqtik parametrlar yoki argumentlar deyiladi,.

Funktsiyani chaqirishda argumentni o’rnida ifoda tursa uning qiymati xisoblanadi va stek xotirasiga natijani va barcha argumentlarni nusxasi yoziladi va bundan keyin funqtsiya faqat nusxasi bilan ish yuritadi.

Agar faqtik parametrni turi formal parametr turiga mos kelmasa u xolda kompilator xato deb xabar beradi.

Parametrlarni funktsiyaga ikki xil usul bilan uzatish mumkin : qiymat bilan yoki manzil bilan.

Qiymat bilan uzatilganda, stekga argumentni o’zi yoki xisoblangan ifodani qiymati nusxasi yoziladi, va funktsiya shu nusxa bilan ishlaydi uni kerak bo’lsa o’zgartirishi xam mumkin , lekin bu o’zgarishlar argumentni o’ziga ta’sir qilmaydi, va funktsiya ishini bajarib bulganda nusxalar o’chirib ketiladi ( stek tozalanadi)

Agar parametr manzil bilan uzatilsa , stekga manzilni nusxasi yoziladi va xuddi shu manzilgdan qiymatlar xam o’qilishi xam yozilishi mumkin, bu degan argumentni qiymati funqtsiya bajarilgandan so’ng o’zgarishi mumkin.

Parametr qiymat bilan uzatilishi uchun formal parametr sifatida oddiy o’zgaruvchini turi va nomi yoziladi. Funktsiyani chaqirishda argumentlar o’zgaruchini ismi yoki ifoda bo’lishi mumkin. Manzil bilan uzatilganda formal parametrni ikki xil usul bilan yozish mumkin: ko’rsatkich orqali yoki murojaat orqali. Ko’rsatkich orkali uzatilsa frmal parametrda turdan so’ng * belgisi yoziladi , mos argumentda esa o’zgaruchini manzili (& amal orqali) yoki massiv ismi, yoki funktsiya nomi bo’lishi mumkin, murojaat parametiri turdan keyin & belgisi yoziladi, argument o’rniga o’zgaruvchini ismi yoziladi.

Misol

#include



void f(int,int *,int & )

void main()

{

int i=1,j=2,k=3;



cout<

F(i,&j,k);

cout<}

Void f(int I;int *j; int &k)

{

i++;(*j)++;k++;*j=i+k;k=*j+I;



}

Natijada ekranga kuyidagi qiymatlar chiqadi:





  1. 2 3

  1. 6 8

Bu misolda birinchi parametr qiymat bilan uzatildi . Uni qiymati fuktsiya ichida o’zgarishi bilan natijada qiymati o’zgarmadi.

Iqqinchi parametr ko’rsatkich orqali manzil bilan uzatildi, manzilni uzatish uchun “&”-manzil olish amali ishlatildi, Ko’rsatkich parametrni qiymati bilan ishlash uchun “*”-qiymat olish amalni qo’llash kerak.

Uchinchi parametr murojaat orыali parametrni manzili uzatildi , bu xolda argument o’rnida o’zgaruvchini nomi, turadi va funqutsiya ichida qiymat olish amalni ishlatishni xojati yo’q, shuning uchun bu usul kulay va tushinarlidir.

Agar manzil bilan uzatilgan parametrni qiymati o’zgartirish kerak emas bo’lsa u xolda parametr const modifikator bilan yozilishi kerak:

F(int n,const char* str)

Agarda funktsiya chaqirishda argumentlar faqat ism bilan berilgan bulsa kelishilgan xolda ular qiymat bilan uzatilgan deb xisoblanadi, faqat massiv va funqtsiyalar manzil bilan uzatilgan deb xisoblanadi.



Download 227 Kb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   18




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish