Funksiyalar
1 Funksiyalarni yaratish va chaqirish
Funksiya nima?
Funksiya — bu C dasturlash tilida alohida vazifani bajarish uchun yozilgan kod blokidir. Har bir funksiya o'ziga xos nomga ega bo'lib, u chaqirilganida o'z ichidagi kodlarni bajaradi. Funksiyalar yordamida kodni qayta ishlatish, modular tuzilishni saqlash va kodni tushunarli qilib yozish imkoniyati bo‘ladi.
Funksiya quyidagi qismlardan iborat:
Funksiya nomi — chaqirilganda funksiyani aniqlash uchun ishlatiladigan nom.
Return turi (return_type) — funksiya bajarilgandan keyin qanday turdagi qiymat qaytarishini belgilaydi (masalan, butun son (int), haqiqiy son (float), belgi (char), va boshqalar).
Parametrlar ro'yxati (parameters) — funksiyaga uzatiladigan argumentlar ro'yxati. Agar parametrlar bo'lmasa, bo'sh qavs ishlatiladi
()
.Funksiya tanasi (function body) — funksiyaning bajariladigan kodlari joylashgan qism.
Funksiya tuzilishi va yaratish:
Misol: Oddiy funksiya yaratish va chaqirish
Tushuntirish:
Funksiya tanasi —
salom_ber()
funksiyasi hech qanday qiymat qaytarmaydi (void
), faqat ekranga "Salom, dunyo!" xabarini chiqaradi.Funksiya chaqirilishi —
main()
funksiyasi ichidasalom_ber()
nomi bilan chaqiriladi va funksiyadagi kodlar ishlaydi.
Yana bir misol: Funksiyaga parametrlar berish
Funksiya parametrlar qabul qilib, o‘sha parametrlar bilan amallar bajarishi mumkin.
Tushuntirish:
Funksiya
ism_ber()
o'z ichiga qator (array) turidagiism[]
parametrini qabul qiladi va ekranga foydalanuvchining ismini chiqaradi.main()
funksiyasidaism_ber("Diyor")
chaqirilgan bo'lib, bu orqali"Diyor"
string qiymat uzatiladi.
2 Funksiya prototiplari
Funksiya prototipi nima?
Funksiya prototipi — bu kompilyatorga funksiyaning qanday ishlashi haqida ma'lumot beruvchi deklaratsiya. Prototip yordamida kompilyator funksiyaning parametrlarini va qaytaradigan qiymat turini oldindan bilib oladi. Funksiya prototipi funksiya chaqirilishidan oldin yoziladi, va u funksiya tanasi oldidan joylashgan bo‘ladi.
Funksiya prototipini e'lon qilish:
return_type — funksiya qaytaradigan qiymat turi.
funksiya_nomi — funksiyani chaqirishda foydalaniladigan nom.
parametrlar — funksiyaga uzatiladigan ma'lumotlar ro'yxati.
Misol: Funksiya prototipi bilan funksiya yaratish
Tushuntirish:
Prototip:
int yigindi(int a, int b);
— bu funksiya ikkita butun sonni qabul qilib, natijada butun sonni qaytarishini bildiradi.Funksiya chaqirilishi:
main()
funksiyasidayigindi(10, 20)
chaqirilib, natijada ikki sonning yig'indisi qaytariladi va ekranga chiqariladi.
3 Return turlari va parametrlar
Return turlari
C dasturlash tilida funksiya natijada ma'lum bir qiymatni qaytarishi mumkin. Bu qiymatni return operatori bilan qaytaramiz. Qaysi turdagi qiymatni qaytarishini return turi belgilaydi.
Eng ko'p ishlatiladigan return turlari:
int — butun sonlarni qaytaradi.
float va double — o‘nlik sonlarni qaytaradi.
char — bitta belgi (harf) qaytaradi.
void — hech qanday qiymat qaytarmaydi.
Misol: Funksiya return turi bilan
Tushuntirish:
Return turi:
int kvadrat(int n)
funksiyasi butun son (int
) qiymatini qaytaradi. Bu holda funksiyan
sonining kvadratini hisoblab qaytaradi.
Funksiya parametrlari
Funksiya parametrlar qabul qilib, o'sha parametrlar orqali amallarni bajaradi. Funksiya chaqirilganda parametrlar qiymati funksiyaga uzatiladi.
Misol: Parametrlar bilan funksiya
Tushuntirish:
Funksiya ikkita parametrni (
a
vab
) qabul qiladi va ularning yig'indisini qaytaradi.
4 Void va Return funksiyalar
Void funksiyalar
Void turi hech qanday qiymat qaytarmaydigan funksiyalar uchun ishlatiladi. Void funksiyalar faqat amallarni bajaradi, lekin natijani qaytarib bermaydi. Ko'pincha ekranga ma'lumot chiqarish yoki faylga yozish kabi operatsiyalar uchun ishlatiladi.
Misol: Void funksiyalar
Tushuntirish:
Bu yerda
salom_ber()
funksiyasi hech narsa qaytarmaydi (void
), faqat ekranga "Salom, dunyo!" degan xabarni chiqaradi.
Return qiluvchi funksiyalar
Return qiluvchi funksiyalar natijada ma'lum bir qiymatni qaytaradi. Funksiya natijasini chaqirgan joyga qaytarish uchun return operatori ishlatiladi.
Misol: Return qiluvchi funksiyalar
Tushuntirish:
kopaytirish()
funksiyasi ikkita butun sonni qabul qilib, ularning ko'paytmasini qaytaradi.
5 GCC bilan funksiyalarni sinovdan o'tkazish
Funksiyalarni sinovdan o'tkazish va kompilyatsiya qilish uchun GCC (GNU Compiler Collection) kompilyatoridan foydalaniladi. C dasturini yozib bo'lgach, uni kompilyatsiya qilish kerak bo'ladi.
Dastur kodini faylga saqlash
Misol uchun, yuqoridagi kopaytirish funksiyasi kodini faylga saqlang:
Fayl nomi:
functions.c
GCC bilan kompilyatsiya qilish
Terminal yoki buyruq satrida quyidagi buyruqni kiriting:
gcc
— GCC kompilyatorini chaqiradi.functions.c
— yozgan faylingizning nomi.-o functions
— kompilyatsiya qilingan bajariladigan fayl nomini belgilaydi.
Dastur bajarilishi
Kompilyatsiya tugagandan so'ng, dasturni ishga tushirish uchun quyidagi buyruqni kiriting:
Bu buyruq dasturingizni bajaradi va natijalarni ekranga chiqaradi.
6. Ko'p funksiyali dasturlarni kompilyatsiya qilish
Bir nechta funksiyalar bilan ishlaydigan dasturlarni ham GCC orqali kompilyatsiya qilish mumkin. Quyidagi misolda bir nechta funksiya yaratilgan va ular birgalikda ishlaydi:
Misol: Ko'p funksiyali dastur
Kompilyatsiya qilish
Yuqoridagi dastur faylga functions.c
nomi bilan saqlanadi, keyin quyidagi buyruq orqali kompilyatsiya qilinadi:
Kompilyatsiyalangan faylni ishga tushirish uchun:
Natija:
Last updated