Axborot texnalogiyalari va kompyuter injiniringi axborot texnologiyalar kafedrasi


Download 41.61 Kb.
bet9/10
Sana19.06.2023
Hajmi41.61 Kb.
#1611528
1   2   3   4   5   6   7   8   9   10
Bog'liq
C kutubxona funksiyalari.

2.3 Funksiya va uning tuzilishi.
C++ da dasturlashning asosiy bloklaridan biri funksiyalardir. Funksiyalar dasturchi ishini juda yengillashtiradi. Funksiyalar yordamida programma modullashadi, qismlarga bo'linadi. Bu esa keyinchalik dasturni rivojlantirishni osonlashtiradi. Bunda dasturchi yozgan funksiyalar C++ ning standart kutubhonasi va boshqa kutubhonalar ichidagi funksiyalar bilan birlashtiriladi. Bu esa ishni osonlashtiradi. Ko'p holda dasturda takroran bajariladigan amalni funksiya sifatida yozish va kerakli joyda ushbu funksiyani chaqirish mumkin. Dastur yozilish davrida hatolarni topishni yengillashtiradi. Bir misolda funksiyaning asosiy qismlarini ko'rib chiqaylik. int foo(int k, int t) { int result; result = k * t; return (result); } Yuqoridagi foo funksiyamizning ismi, () qavslar ichidagi parametrlar – int tipidagi k va t lar kirish argumentlaridir, ular faqat ushbu funksiya ichida 62 ko'rinadi va qo'llaniladi. Bunday o'zgaruvchilar lokal (local - mahalliy) deyiladi. result foo() ning ichida e’lon qilinganligi uchun u ham lokaldir. Demak biz funksiya ichida o'zgaruvchilarni va sinflarni (class) e’lon qilishimiz mumkin ekan. Lekin funksiya ichida boshqa funksiyani e’lon qilib bo'lmaydi. foo() funksiyamiz qiymat ham qaytaradi. Qaytish qiymatining tipi foo() ning e’lonida eng boshida kelgan - int tipiga ega. Biz funksiyadan qaytarmoqchi bo'lgan qiymatning tipi ham funksiya e’lon qilgan qaytish qiymati tipiga mos kelishi kerak - ayni o'sha tipda bo'lishi yoki o'sha tipga keltirilishi mumkin bo'lgan tipga ega bo'lishi shart. Funksiyadan qiymatni return ifodasi bilan qaytaramiz. Agar funksiya hech narsa qaytarmasa e’londa void tipini yozamiz. Yani: void funk(){ int g = 10; cout << g; return; } Bu funksiya void (bo’sh, hech narsasiz) tipidagi qiymatni qaytaradi. Boshqacha qilib aytganda qaytargan qiymati bo’sh to’plamdir. Lekin funksiya hech narsa qaytarmaydi deya olmaymiz. Chunki hech narsa qaytarmaydigan mahsus funksiyalar ham bor. Ularning qaytish qiymati belgilanadigan joyga hech narsa yozilmaydi. Biz unday funksiyalarni keyinroq ko’rib chiqamiz. Bu yerda bir nuqta shuki, agar funksiya mahsus bo’lmasa, lekin oldida qaytish qiymati tipi ko’rsatilmagan bo'lsa, qaytish qiymati int tipiga ega deb qabul qilinadi. void qaytish tipli funksiyalardan chiqish uchun return; deb yozsak yetarlidir. Yoki return ni qoldirib ketsak ham bo’ladi. Funksiyaning qismlari bajaradan vazifasiga ko’ra turlicha nomlanadi. Yuqorida korib chiqqanimiz funksiya aniqlanishi (function definition) deyiladi, chunki biz bunda funksiyaning bajaradigan amallarini funksiya nomidan keyin, {} qavslar ichida aniqlab yozib chiqyapmiz. Funksiya aniqlanishida {} qavslardan 63 oldin nuqta-vergul (;) qo'yish hatodir. Bundan tashqari funksiya e’loni, prototipi yoki deklaratsiyasi (function prototype) tushunchasi qo'llaniladi. Bunda funksiyaning nomidan keyin hamon nuqta-vergul qo'yiladi, funksiya tanasi esa berilmaydi. C++ da funksiya qo’llanilishidan oldin uning aniqlanishi yoki hech bo'lmaganda e’loni kompilyatorga uchragan bo'lishi kerak. Agar funksiya e’loni boshqa funksiyalar aniqlanishidan tashqarida berilgan bo'lsa, uning kuchi ushbu fayl ohirigacha boradi. Biror bir funksiya ichida berilgan bo'lsa kuchi faqat o'cha funksiya ichida tarqaladi. E’lon fayllarda aynan shu funksiya e’lonlari berilgan bo’ladi. Funksiya e’loni va funksiya aniqlanishi bir-biriga mos tushishi kerak. Funksiya e’loniga misol: double square(char, bool); float average(int a, int b, int c); Funksiya e’lonlarda kirish parametrlarining faqat tipi yozish kifoya, huddi square() funksiyasidek. Yoki kiruvchi parametrlarning nomi ham berilishi mumkin, bu nomlar kompilyator tarafidan etiborga olinmaydi, biroq dasturning o'qilishini ancha osonlashtiradi. Bulardan tashqari C++ da funksiya imzosi (function signature) tushunchasi bor. Funksiya imzosiga funksiya nomi, kiruvchi parametrlar tipi, soni, ketma-ketligi kiradi. Funksiyadan qaytuvchi qiymat tipi imzoga kirmaydi. int foo(); //No1 int foo(char, int); //No2 double foo(); //No3 - No1 funksiya bilan imzolari ayni. void foo(int, char); //No4 - No2 bilan imzolari farqli. char foo(char, int); //No5 - No2 bilan imzolari ayni. int foo(void); //No6 - No1 va No3 bilan imzolari ayni, Yuqoridagi misolda kirish parametrlari bo'lmasa biz () qavsning ichiga void deb yozishimiz mumkin (No6 ga qarang). Yoki () qavslarning quruq o’zini yozaversak ham bo’ladi (No1 ga qarang). 64 Yana bir tushuncha - funksiya chaqirig'idir. Dasturda funksiyani chaqirib, qo'llashimiz uchun uning chaqiriq ko'rinishini ishlatamiz. () qavslari funksiya chaqirig'ida qo'llaniladi. Agar funksiyaning kirish argumentlari bo’lmasa, () qavslar bo’sh holda qo’llaniladi. 4.2 Matematik kutubhona funksiyalari Standart kutubhonaning matematik funksiyalari ko’pgina amallarni bajarishga imkon beradi. Biz bu kutubhona misolida funksiyalar bilan ishlashni ko’rib chiqamiz. Masalan bizning dasturimizda quyidagi satr bor bo'lsin: double = k; int m = 123; k = sin(m); Kompilyator ushbu satrni ko'rganida, standart kutubhonadan sin funksiyasini chaqiradi. Kirish qiymati sifatida m ni berdik. Javob, ya’ni funksiyadan qaytgan qiymat k ga berildi. Funksiya agumentlari o’zgarmas sonlar (const), o'zgaruvchilar, ifodalar va boshqa mos keluvchi qiymat qaytaradigan funksiyalar bo'lishi mumkin. Masalan: int g = 49, k = 100; cout << "4900 ning ildizi -> "<< sqrt( g * k ); Ekranda: 4900 ning ildizi -> 70; Matematik funksiyalar aksariyat hollarda double tipidagi qiymat qaytarishadi. Kiruvchi argumentning tipi sifatida esa double ga keltirilishi mumkin bo’lgan tip beriladi. Bu funksiyalarni ishlatish uchun math.h (yangi ko'rinishda cmath) e’lon faylini include bilan asosiy dastur tanasiga kiritish kerak. Quyida matematik funksiyalar kutubhonasining bazi bir a'zolarini beraylik. x va y o'zgaruvchilari double tipiga ega. 65 4.1–jadval. Matematik funksiyalar Funksiya Aniqlanishi Misol ceil(x) x ni x dan katta yoki unga teng b-n eng kichik butun songacha yahlitlaydi ceil(12.6) = 13.0 ceil(-2.4) = -2.0 cos(x) x ning trigonometrik kosinusi (x radianda) cos(0.0) = 1.0 exp(x) e ning x chi darajasi (eskponetsial f-ya) exp(1.0) = 2.71828 exp(2.0) = 7.38906 fabs(x) x ning absolut qiymati x>0 => abs(x) = x x=0 => abs(x) = 0.0 x abs(x) = -x floor(x) x ni x dan kichik bo'lgan eng katta butun songacha yahlitlaydi floor(4.8) = 4.0 floor(-15.9) = -16.0 fmod(x,y) x/y ning qoldig'ini kasr son tipida beradi fmod(7.3,1.7) = 0.5 log(x) x ning natural lagorifmi (e asosiga ko'ra) log(2.718282)= 1.0 log10(x) x ning 10 asosiga ko'ra lagorifmi log10(1000.0)=3.0 pow(x,y) x ning y chi darajasini beradi pow(3,4)= 81.0 pow(16,0.25) = 2 sin(x) x ning trigonometrik sinusi (x radianda) sin(0.0)= 0.0 sqrt(x) x ning kvadrat ildizi sqrt(625.0)= 25.0 tan(x) x ning trigonometrik tangensi (x radianda) tan(0.0) = 0 4.3 Algoritm kutubxonasi funksiyalari Hаr bir funksiya – funksiyalаr shаblоni yoki funksiyalаr shаblоni to’plаmi yordаmidа ifоdаlаnаdi. SHundаy qilib, funksiya hаr хil tipdаgi qiymаtlаrgа egа bo’lgаn hаr хil kоntеynеrlаr bilаn ishlаy оlаdi. Bаrchа funksiyalаrni аrgumеntlаri (begin, end) yarim оrаliqlаr bo’lаdi.
C++ dasturi tarixi C++ dasturlash tili nomi C dasturlash tilidan kelib chiqqan bq`lib, ++ belgisi inkrement amali, ya`ni o'zgaruvchining qiymatini bittaga oshish amalidan olingan. C ++ dasturlash tili turli xil amaliy dasturlarni yaratish, operatsion tizimlarni, qurilma drayverlarini, shuningdek video o'yinlarni va boshqalarni yaratish uchun keng qo'llaniladi. C ++ dasturlash tili 1980-yillarning boshlarida Bell Laboratories firmasi xodimi Byorn Stroustrup tomonidan yaratilgan. Byorn Stroustrup Byorn Stroustrup o'zining ehtiyojlari uchun C dasturlash tiliga bir qator yangiliklar kiritmoqchi bo`ldi, ya'ni dastlab C ++ dasturlash tilini yaratish rejalashtirilmagan edi. U dastlab o`zi yaratgan dasturlash tilini “C with classes”(“C bilan sinflar”) deb nomladi. Dasturlash tilining dastlabki versiyasi 1980 yilda paydo bo'lgan. Straustrup dasturlash tiliga sinflar va ob'ektlar bilan ishlash imkoniyatini qo'shdi va shu bilan C sintaksisi asosida yangi dasturlash tili uchun zarur shart-sharoitlarni yaratdi. C++ sintaksisi C sintaksisiga asoslangan bo`lib, Byorn Stroustrup C tili bilan moslikni saqlashga intildi. 1983 yilda dasturlash tili "C ++ dasturlash tili" deb o'zgartirildi. C++ Cga ob'ektga yo'naltirilganlik xususiyatlarni qo'shdi. Oby’ektga yo`naltirilgan dasturlashning uchta xususiyatini mavjud:, meros (nasledovaniye), polimorfizm va inkapsulyatsiya. Usul(Metod) - bu sinf ichida e'lon qilingan va uning ob'ektlari bilan ishlashga mo'ljallangan funktsiyadir. Usullar sinf tanasida e'lon qilinadi. Meros (Nasledovaniye) C ++ tilida bitta sinf xossa- xususiyatlarini boshqa sinf meros qilib olishi mumkin. Merosxo`r klass o'z maydonlarini va funktsiyalarini yaratishi yoki asosiy sinfning funktsiyalarini qayta aniqlashi mumkin. Merosxo'r konstruktor asosiy sinf konstruktorlarini chaqiradi. Destruktor esa teskari tartibda ishlaydi. Meros umumiy(publik), himoyalangan (Protected) va xususiy (private) bo`lishi mumkin. Polimorfizm Ob'ektga yo'naltirilgan dasturlashda qo'llaniladigan polimorfizmning maqsadi, sinf uchun umumiy bo'lgan harakatlarni belgilash uchun bitta nomdan foydala-nishdir. Har bir harakatning bajarilishi ma'lumotlar turiga qarab belgilanadi. Polimorfizmning afzalligi shundaki, u bitta interfeysdan foydalanib yagona harakatlar sinfini aniqlashga imkon berish orqali dasturlarni soddalashtirishga yordam beradi. Inkapsulatsiya C++ da ma'lumotlarni tashkil qilish klasslar orqali amalga oshiriladi. C++ klassi maydonlar, turlar va funktsiyalaridan iborat bo'ladi. C++ tilidagi inkapsulatsiya klass a'zolarining ta’sir doirasini belgilaydi: ular ommaviy, himoyalangan va xususiy bo`lishi mumkin. Standart kutubxona C ++ dasturlash tilida standart kutubxona sinflar va funktsiyalar to'plamini anglatadi. Standart kutubxona bir nechta asosiy konteynerlarni, ushbu konteynerlar bilan ishlash funktsiyalarini, ob'ektlarni, satr va oqimlarning asosiy turlarini, ba'zi til xususiyatlarini va amallarni bajarish uchun tez-tez ishlatiladigan funktsiyalarni o`z ichiga oladi. Masalan, sonning kvadrat ildizini topish. Standart kutubxonaning funktsional xususiyatlari std nomlar fazosida e'lon qilinadi. C dasturlash tilidan dan farqli tomonlari: • ob'ektga yo'naltirilgan dasturlashni qo'llabquvvatlash; • andozalar orqali umumlashtirilgan dasturlashni qo'llab-quvvatlash; • qo'shimcha ma'lumotlar turlari; • istisnolar; • nom maydonlari; • ichki funktsiyalar; • operatorning yuklanishi(peregruzka); • funktsiyalarning yuklanishi; • a xotirani erkin boshqarish operatorlari; • standart kutubxonaga qo'shimchalar. Afzalliklari: • C tili bilan yuqori muvofiqlik • Hisoblash samaradorligi • Turli dasturlash uslublarini qo'llab-quvvatlash: tarkibiy, ob'ektga yo'naltirilgan, umumlashtirilgan dasturlash, funktsional dasturlash. • Ob’yekt destruktorlarni avtomatik ravishda chaqirish xotira va boshqa manbalarni boshqarish ishonchliligini soddalashtiradi va oshiradi. • Ortiqcha yuklangan operatorlar • shablonlar • To'g'ridan-to'g'ri kompilyatorlar tomonidan qo'llab-quvvatlanmaydigan paradigmalarni qo'llab-quvvatlash uchun tilni kengaytirish imkoniyati mavjudligi. • C ++ uchun turli tillarga tarjima qilingan juda ko'p o'quv adabiyotlari mavjud Kamchiliklari: • Noto'g'ri ishlab chiqilgan sintaksisning mavjudligi tilning qo'llanilishini pasaytiradi • Til ko'p muhim xususiyatlarga ega emas. • Dasturchilar uchun unumdorligi ancha past • Noqulay sintaksis • Og'ir meros • Xotirani kuzatib borish zarurati Dev C++ dasturi mihitida ishlash Dev-C ++ (Dev-Cpp) - bu C / C ++ dasturlash tillari uchun bepul dasturlarni ishlab chiqish muhiti. Dev-C ++ dastur oynasini quyidagi ko`rinishda bo`ladi: Fayllardan birini ochish uchun navigatsiya panelida ko'rsatilgan element orqali yoki Ctrl + O tugmalaridan foydalanish mumkin. C ++ tilida yozilgan dasturlar ishga tushirishdan oldin kompilyatsiya qilinishi kerak va shundan keyingina ijro etilishi kerak. Buning uchun Dev-C ++ uchta piktogrammadan foydalanadi . - Скомпилировать - dastur kodini oddiy kompilyatsiya qilish. Ushbu bosqichda kompilyator yozilgan kodni xatolar uchun tekshiradi va agar hamma narsa tartibda bo'lsa, dastur kodini - *. exe bajaruvchi faylga uzatadi. Agar xatolar bo'lsa, unda kompilyator ishi to'xtatiladi va xatolarni topish va tuzatishga yordam berish uchun " Компилятор " oynasida xato kodlari ko'rsatiladi. Tezkor tugma - F9. Выполнить - bu buyruq kodni qayta kompilyatsiya qilmasdan takroran ishlashimizga imkon beradi. Tezkor tugma - F10. -Скомпилировать и выполнить - agar biz kompilyatsiya qilinganidan keyin darhol dasturning bajarilishini konsolda ko'rishni istasak, unda biz ushbu belgidan foydalanamiz. Tezkor tugma - F11. Barcha ishlaydigan dasturlar konsol oynasida ochiladi. Agar dasturda rus tilidagi matnni ishlatsangiz, u holda bu matn konsolda tushunarsiz belgilar bilan ifodalanadi. Buni tuzatish uchun konsol oynasining yuqori qismiga sichqonchaning o'ng tugmachasi bosish va paydo bo`lgan darchaning pastki qismida " Свойства " punktini tanlash kerak. " Шрифт “ varag`iga o`tiladi - va "Lucida Console" buyrug`i tanlanadi. Konsol oynasida matnni ko'rsatish uchun shrift o`lchamini o`zgartirish mumkin. «Цвета“ varag`iga o`tiladi. Bu erda konsol oynasida fon rangini va shrift rangini o'zgartirishimiz mumkin. Agar qora fonda oq shriftni afzal ko'rsangiz, unda hech narsaga tegish kerak emas. O'zgarishlardan so'ng dastur konsol oynasida quyidagi ko`rinishga keladi: C++ TILI ALIFBOSI C ++ dasturlash tili alifbosi quyidagilarni o'z ichiga oladi: • Katta va kichik lotin harflari va pastki chiziqcha; • 0 dan 9 gacha bo'lgan arab raqamlari; • maxsus belgilar: "{}, | [] () + - /% *. \? <=>! & # -; '' • bo'sh joy, tabulyatsiya, yangi qatorga o`tish belgilari. Alifbo belgilaridan tilning leksemalari shakllanadi (mustaqil ma'noga ega bo'lgan tilning minimal birligi):Leksemalar turlari: • identifikatorlar; • kalit so'zlar; • operatsiyalar belgilari; • o`zgarmas; • ajratuvchi (qavs, vergul, bo'sh joy belgilari). Identifikator Identifikator - bu dastur ob'ektining nomi. Identifikatordagi birinchi belgi harf yoki pastki chiziq bo'lishi mumkin. Identifikator ichida bo'shliq bo`lmasligi kerak. Masalan: v1, _sum Identifikatorni tanlashda quyidagilarni yodda tuting: • identifikator kalit so'zlar va ishlatiladigan standart til ob'ektlarining nomlari bilan bir xil bo'lmasligi kerak; • identifikatorlarni pastki chiziq bilan boshlash tavsiya etilmaydi, chunki bu holda ular tizim funktsiyalari yoki o'zgaruvchilar nomlari bilan mos kelishi mumkin. Kalit so'zlar Kalit so'zlar - kompilyator uchun alohida ahamiyatga ega bo'lgan ajratilgan identifikatorlar. 1-jadval. C ++ kalit so'zlar ro'yxati: asm auto bool break case catch char class const const_cast continue default delete do double dynamic_cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new operator private protected public register reinterpret_cast return short signed sizeof static static__cast struct switch template this throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while Amal belgilari Amal belgisi - operandlardagi harakatni belgilaydigan bir yoki bir nechta belgilar. Amallar ishtirok etadigan operandalar soniga ko'ra unar, binar va ternar turlarga bo'linadi. O`zgarmaslar O`zgarmaslarga qiymati o`zgarmaydigan kattaliklar kiradi. Butun, haqiqiy, belgili va satr turidagi o`zgarmaslar mavjud. Sharhlar Sharhlar alohida qismlarni yoki butun dasturni tushuntirish uchun ishlatiladi. Kompilyator sharhlarni e'tiborsiz qoldiradi. C ++ dasturi sharhlarning ikkita shaklidan foydalanadi: • sharh ikkita // belgi bilan boshlanadi. Masalan: • sharh quyidagi belgilar orasida yoziladi / * ... * /, masalan, Ma'lumotlarning asosiy turlari: Asosiy ma'lumotlar turlari quyidagilardan iborat: • int (butun son); • char (belgi); • wchar_t (kengaytirilgan belgi); • bool (mantiqiy); • float (haqiqiy); • double(ikkilangan aniqlikdagi haqiqiy). Standart turlarning qiymatlar diapazonini aniqlash uchun to'rt turdagi spetsifikatorlar ishlatiladi: • short(qisqa); • long(uzun); • signed (imzolangan); • unsigned(imzo qo'yilmagan). Turlarning o'lchamlari va qiymatlarining o`zgarish oralig`i: Tur O`lchami (байт) Qiymatning o`zgarish oralig`i bool 1 true, false signed char 1 -128 ... 127 unsigned char 1 0 ... 255 signed short int 2 -32768 ... 32767 unsigned short int 2 0 ... 65535 signed long int 4 -2 147 483 648 ... 2 147 483 647 unsigned long int 4 0 ... 4 294 967 295 float 4 3.4e-38 ... 3.4e+38 double 8 1.7e-308 ... 1.7e+308 long double 3.4e-4932 ... 3.4e+4932 Void turi Void turi C ++ tilining asosiy turlaridan biri. Ushbu turning qiymatlari bo'sh to`plamni tashkil etadi. Undan qiymatni qaytarmaydigan funktsiyalarni aniqlash uchun, funktsiya argumentining bo'sh ro'yxatini ko'rsatish uchun ishlatiladi. C ++ dasturi funksiyalar, tavsiflar va preprotsessor ko'rsatmalaridan iborat. (Preprocessor - kompilyatsiya qilishdan oldin dastlabki kod faylini qayta ishlaydigan dastur). Eng oddiy dasturni ko'rib chiqamiz: Birinchi satrda ma’lumotlarni kiritish / chiqishni boshqarish uchun zarur ma'lumotni o`z ichiga oluvchi , sarlavha faylini kiritish uchun #include direktivasidan foydalaniladi. Keyingi using ko`rsatmasi yordamida C ++ tilining standart kutubxonasi vositalarini belgilaydigan std nomlar fazosi islatiladi. (Nomlar fazosi - bu identifikatorlarni mantiqiy guruhlash uchun yaratilgan to'plamdir). Har qanday C ++ dasturi main () funktsiya bilan boshlanadi. Ushbu funksiya to'rt elementni o'z ichiga oladi: • qaytish turi (bizning holatlarimizda int ); • funksiya nomi (main); • Qavslar ichidagi parametrlar ro'yxati (bu holda ro'yxat bo'sh); • figurali qavslar bilan chegaralangan, ko'rsatmalar blokini ifodalovchi funksiya tanasi. Ko'rsatma - bu harakatni belgilaydigan va protsessor ko'rsatma bo'lmagan dasturning qismi. Bizning dasturimizda funksiya tanasi ikkita ko'rsatmalarni o'z ichiga oladi: cout << "Hello, World!"; return 0; Birinchidan, ekranga Hello, World satri chiqariladi, so`ng dastur muvaffaqiyatli bajarilganligini anglatuvchi 0 raqami chiqariladi. C ++ tilidagi har bir buyruq nuqta-vergul bilan tugaydi. Quyidagi istisnolar mavjud: # Belgi bilan boshlanadigan protsessor protseduralari (masalan, , #include); figurali qavs bilan chegaralangan murakkab operatorlar va funksiyani aniqlash bloklari - {}. Ifodalar ba'zi qiymatlarni hisoblash uchun ishlatiladigan dasturlarning asosiy tarkibiy elementlaridir. Ifodalar operandalar, amal belgilari va qavslardan iborat. Operandlar hisoblash uchun ma'lumotlarni beradi. Operatsiyalar, ustuvorliklarga muvofiq, kerakli harakatlarni aniqlaydi. Ifodalarning tarkibiy qismlarini ko'rib chiqing. O'zgaruvchilar O'zgaruvchi -ma'lum bir turdagi ma'lumotlar saqlanadigan xotiraning nomlangan maydoni. O'zgaruvchiga berilgan ma'lumot qiymat deb ataladi. Dastur davomida o'zgaruvchining qiymati o'zgarishi mumkin. Ishlatishdan oldin har qanday o'zgaruvchini e'lon qilish kerak, ya'ni, nomi, turi va (ixtiyoriy) boshlang'ich qiymati e`lon qilinadi. O'zgaruvchini e`lon qilishning umumiy shakli quyidagicha: • tur o'zgaruvchilar ro`yxati Bu yerda tur - bu ma'lumotlar turi; o'zgaruvchilar ro`yxati - ko'rsatilgan turdagi o'zgaruvchan nomlar ro'yxati. O'zgaruvchilarni e’lon qilishga misollar: • int i, k, x; • double d, dBalans; E’lon qilish jarayonida o'zgaruvchini inisializatsiya qilish mumkin: • teng belgi bilan: int a = 10, b = 20;
C++ dasturlash tilining tarixi C++ dasturlash tili C tiliga asoslangan. C esa oʼz navbatida B va BCPL tillaridan kelib chiqqan. BCPL 1967 yilda Martin Richards tomonidan tuzilgan va operatsion sistemalarni yozish uchun moʼljallangan edi. C++ tilini 80 yillarda АT&T Bell Labs korxonasi ishchisi Byarnom Straustrup tuzgan. Аvtorning aytishicha, bu tilni tuzishda u hech qanday qogʼozlarni qoralamagan va hamma ishni yoʼl yoʼlakay, ketmaketlikda tuzib chiqqan. Uning asosiy maqsadi, oʼzi va doʼstlari uchun qulay dasturlash tili yaratishdan iborat edi. C++ dasturlash tilining asosi C hisoblanadi va shu tilni(C) misolida C++ tilini tuzib chiqdi. C dasturlash tilini mukammalashtirgan eng asosiy narsa bu – obʼyektga moʼljallangan dasturlashni olib kirgani hisoblanadi. Chunki dasturlashda, tez, qulay, tartibli va ixcham yozish uchun obʼyektga moʼljallangan dasturlash tillaridan foydalanish lozim boʼladi. Dastlabki C++ dasturlash tilidan foydalanganlar, bu albatta Bell Labs korxonasi hodimlari hisoblanadi. C++ dasturlash tili 1990 yilda C++ standarti ishlab chiqildi va bu standart hozir ANSI C nomi bilan mashxur. Bu til juda kengayib ketdi va hozirgi kunda bu tilning imkoniyatlari juda cheksiz hisoblanadi. C++ funksiya va obʼyektlarning boy kutubxonasiga ega. Bundan kelib chiqadiki C++ dasturlash tilini oʼrganish 2 qismga boʼlinadi: dastlab, C++ tili sintaksisi oʼrganiladi va shundan soʼng uning asosiy kutubxonalari birma-bir koʼrib chiqib, yodlash lozim boʼladi. Bundan koʼrinib turibdiki, bu til juda katta hajmni oʼz qamroviga oladi. C++ tilining egasi yoʼq u hech kimga tegishli emas. Bu til S tilidan kelib chiqgani uchun bosh harf S, ++ esa bu tildagi qiymatni bittaga koʼtarish belgisi hisoblanadi va bu belgi C++ dasturlash tilida paydo boʼldi. C++ dasturlash tili kompilyatsiya qilinadigan til hisoblanadi bu degani yozilgan kod oldin mashina tiliga oʼgiriladi va keyin ishga tushiriladi. C++ dasturlash tilining alifbosi C++ dasturlash tilining alifbosi quyidagilardan iborat: 0 dan 9 gacha bo’lgan sonlar Katta va kichik lotin harflari Maxsus belgilar (+, -, *, /, =, >, =, <=, ) kiradi. Аrifmetik va relyatsion operatorlar Mantiqiy operatorlar - ikki yoki undan koʼp shartlarni, cheklovlarni birlashtirish yoki koʼrib chiqilayotganda asl holatni baholashni toʼldirish uchun ishlatiladi. Mantiqiy operatorning ishlashi natijasi - bu haqiqiy yoki notoʼgʼri boʼlgan mantiqiy qiymat hisoblanadi. Masalan, C yoki C ++ tillaridagi && operatori sifatida ifodalangan mantiqiy va koʼrib chiqilayotgan shartlarning ikkalasi ham bajarilganda haqiqiy qaytaradi. Аks holda u notoʼgʼri qaytaradi. Ulara && (AND) va || (OR) kiradi. Bitwise operatorlar - oʼzgaruvchilarda bit darajasidagi amallarni bajarish uchun ishlatiladi. Аvval operatorlar bit -darajaga oʼtkaziladi, soʼngra oʼzgaruvchilarda hisoblash amalga oshiriladi. Qoʼshish, ayirish, koʼpaytirish va boshqalar kabi matematik amallar tezroq ishlov berish uchun bit darajasida bajarilishi mumkin. Masalan, C yoki C ++ dagi bit tomoni AND va operator sifatida ikkita raqamni oʼzgaruvchilar sifatida oladi va ikkala sonning har bitida AND raqamlarini oladi. Аgar ikkala bit ham 1 ga teng boʼlsa, AND natijasi 1 boʼladi. Mantiqiy va bitwise operatorlar Belgilash operatorlari - oʼzgaruvchiga qiymat berish uchun ishlatiladi. Belgilangan operatorning chap tomonidagi belgi oʼzgaruvchan va tayinlash operatorining oʼng tomonidagi belgi - bu qiymat. Oʼng tarafdagi qiymat chap tomonda oʼzgaruvchan maʼlumotlarning bir xil turiga ega boʼlishi kerak, aks holda kompilyator xato qiladi. Masalan: int a=10, double b=15,48, string natija=“Masalaning javobi:” va boshqalar. Qoʼshimcha operatorlar - yuqoridagi operatorlardan tashqari baʼzi bir muayyan vazifani bajarish uchun ishlatiladigan C yoki C ++ da baʼzi boshqa operatorlar mavjud. Ulardan baʼzilarini koʼrib chiqamiz: Sizeof C / C ++ dasturlash tilida juda koʼp ishlatiladi. Uning asosiy vazifasi maʼlumot yoki qiymatni hajmini aniqlash uchun ishlatiladi. Bundan tashqari vergul (,) operatori, shartli operator va boshqalar. Belgilash va qoʼshimcha operatorlar C++ dasturlash tilida identifikator Identifikator – bu dasturchi tomonidan kiritiladigan dastur elementlari (funktsiya, oʼzgaruvchilar, oʼzgarmaslar …) uchun ixtiyoriy nom. Identifikator tanlanganda quyidagilarga ahamiyat berish kerak: Identifikator lotin harflaridan boshlanishi shart; Ikkinchi simvoldan boshlab raqamlardan foydalanish mumkin; C++ da katta kichik harflar farq qiladi. Yaʼni quyidagilarning har biri alohida identifikator hisoblanadi: KATTA, katta, KaTTa, kAttA, KattA, … Probel C++ da soʼzlarni ajratish uchun ishlatiladi. Shuning uchun identifikatorda probeldan foydalanib boʼlmaydi. Xizmatchi (int, float, for, while kabi) soʼzlardan identifikator sifatida foydalanib boʼlmaydi? C ++ STANDART KUTUBXONASI C++ дастурлаш тилида C ++ стандарт кутубхонаси бу асосий тилда ва C ++ ISO стандартининг бир қисмида ёзилган синфлар ва функциялар тўпламидир. C ++ дастурлаш тилида дастур ёзишдан олдин биринчи навбатда керакли кутубхонани улаш зарур бўдади. Сабаби ушбу дастурлаш тилининг ўзаги унинг кутубхонаси ҳисобланади. C стандарт кутубхонасининг ҳар бир сарлавҳаси C ++ стандарт кутубхонасига бошқа ном остида киритилган. Ушбу сарлавҳалар ва анъанавий C стандарт кутубхона сарлавҳалари ўртасидаги фарқ шундаки, функциялар имкон қадар std:: namespace ичига жойлаштирилиши керак. C++ dasturlash tilida eng koʼp ishlatiladigan kutubxonalar - kirish va chiqish asoslarini taʼminlaydi. - chiziqlarni va oʼzgaruvchi nuqta qiymatlarining aniqligi kabi chiqish formatlashini boshqarish uchun imkoniyatlar yaratadi. - Matematik funktsiyalarni oʼz ichiga olgan kutubxona.


Download 41.61 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




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