Сайфиев ж. Ф. С++ тилига кириш услубий қўлланма


Download 3.45 Mb.
bet26/79
Sana18.10.2023
Hajmi3.45 Mb.
#1707139
1   ...   22   23   24   25   26   27   28   29   ...   79
Bog'liq
cpp buxoro




Функция прототиплари.


Кўпгина ички қурилган функцияларнинг прототиплари дастурга #include калит сўзи ёрдамида қўшиладиган файл-сарлавҳасида ёзилади. Фойдаланувчи томонидан тузиладиган функциялар учун эса уларнинг мос прототипларини дастурга қўшиш дастурчи томонидан бажарилиши лозим.


Функциянинг прототипи нуқтали вергул орқали тугайдиган функцияни қайтарадиган қиймати ва сигнатурасидан иборатдир. Функцияни сигнатураси деб унинг номи ва параметрлар рўйхати тушинилади.
Формал параметрлар рўйхати барча параметрлар ва уларнинг типларини ифодалайди. Функция прототипининг таркибий қисмлари 5.2. - расмда кўрсатилган.

unsigned short int FindArea ( int length, int width ) ;




5.2.–расм. Функция прототипининг таркибий кисмлари

Функциянинг прототипи ҳамда аниқланишидаги унинг қайтарадиган қиймати типи ва сигнатураси мос бўлиши лозим. Агарда бундай мутаносиблик бўлмаса компилятор хатолик ҳақида хабар беради. Функция прототипида параметр номларисиз типларни кўрсатилиши етарлидир. Масалан, қуйида келтирилган мисол туғридир:


long Area(int, int)
Бу прототип иккита бутун сонли параметрни қабул қилиб, long типидаги қиймат қайтарадиган Area() номли функцияни эълон қилади. Прототипнинг бундай ёзилиши унчалик яхши вариант эмас. Прототипга параметрларнинг номларини қўшилиши уни тушунарлироқ бўлишини таъминлайди.
Ҳар бир функциянинг қайтарадиган қиймати типи аниқланган бўлади. Агарда у очиқ аниқланмаган бўлса автоматик равишда int типини қабул қилади.
5.1.–листинг. Функцияни эълон қилиниши, аниқланиши ва ишлатилиши.

  1. // 5.1. – Листинг. Функция прототипини

  1. // кўлланлиши

  2. # include

  3. //функция прототипи

  4. int Yuza(int uzunlik, int kenglik);

  5. int main()

  6. {

  7. int YerUzunligi,

  8. int YerKengligi,

  9. int YerMaydoni;

  10. cout<< “\n Yerning uzunligi necha metr?\n”;

  11. cin >> YerUzunligi;

  12. cout<< “\n Yerning kengligi necha metr?”;

  13. cin >> YerKengligi;

  14. YerMaydoni=Yuza(YerUzunligi,YerKengligi);

  15. cout << “\n Yer maydoni yuzasi ”;

  16. cout >>YerMaydoni;

  17. cout << “kvadrat metr\ n \ n”;

  18. return 0;

  19. }

  20. int Yuza(int YerUzunligi,int YerKengligi)

  21. {

  22. return YerUzunligi* YerKengligi

  23. }

НАТИЖА
Yerning uzunligi necha metr? 200
Yerning kengligi necha metr? 100
Yer maydoni yuzasi 20000 kvadrat metr

Download 3.45 Mb.

Do'stlaringiz bilan baham:
1   ...   22   23   24   25   26   27   28   29   ...   79




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