C++ dasturlash tilining streambuf, tuple va stack kutubxonalari funksiyalari
Mavzu:C++ dasturlash tilining streambuf, tuple va stack kutubxonalari funksiyalari. I KIRISH 1. C++ dasturlash tili va uning vazifalari II ASOSIY QISM Nazariy qism 1. C++ kutubxonalari va xossalari 2. Streambuf va tuple kutubxonalari haqida malumot 3. Stack kutubxonasi. Amaliy qism III XULOSA 1. C++ kutubxonalari ahamiyati Hozirgi kunda juda ko‘p algoritmik tillar mavjud. Bular ichida Java va C++ dasturlash tillari universal tillar hisoblanib, boshqa tillarga qaraganda imkoniyatlari kengroqdir. So‘ngi yillarda Java va C++ dasturlash tillari juda takomillashib, tobora ommalashib bormoqda. Mazkur tillardagi vositalar zamonaviy kompyuter texnologiyasining hamma talablarini o‘z ichiga olgan va unda dastur tuzuvchi uchun ko‘pgina qulayliklar yaratilgan. C++ 1980 yillar boshida Bjarne Stroustrup tomonidan C tiliga asoslangan tarzda tuzildi. C++ juda ko’p qo’shimchalarni o’z ichiga olgan, lekin eng asosiysi u obyektlar bilan dasturlashga imkon beradi.
Dasturlarni tez va sifatli yozish hozirgi kunda katta ahamiyat kasb etmoqda. Buni ta’minlash uchun obyektli dasturlash g’oyasi ilgari surildi. Huddi 1970 yillar boshida strukturali dasturlash kabi, dasturlarni hayotdagi jismlarni modellashtiruvchi obyektlat orqali tuzish dasturlash sohasida inqilob qildi. C++ dan tashqari boshqa ko'p obyektli dasturlshga yo’naltirilgan tillar paydo bo'ldi. Shulardan eng ko’zga tashlanadigani Xerox ning Palo Altoda joylashgan ilmiy-qidiruv markazida (PARC) tuzilgan Smalltalk dasturlash tilidir. Smalltalk da hamma narsa obyektlarga asoslangan. C++ esa gibrid tildir. Unda C tiliga o’hshab strukturali dasturlash obyektlar bilan dasturlash mumkin. C++ funksiya va obyektlarning juda boy kutubhonasiga ega. Yani C++ dasturlash tilida dasturlashni o’rganish ikki qismga bo’linadi. Birinchisi bu C++ tilini o’zini o’rganish, ikkinchisi esa C++ ning standart kutubhonasidagi tayyor obyekt va funksiyalarni qo’llashni o’rganishdir. 6 C++ tiliga ko‘plab yangiliklar kiritilgan bo‘lib, tilning imkoniyati yanada kengaytirilgan. C++ dasturlash tili ham boshqa dasturlash tillari kabi o‘z alfavitiga va belgilariga ega. Tillarda mavjud alfavit va leksemalarga quyidagilar kiradi: 1. Katta va kichik lotin alfaviti harflari; 2. Raqamlar - 0,1,2,3,4,5,6,7,8,9; 3. Maxsus belgilar: " {} | [] () + - / % \ ; ' : ? <=>_ ! & ~ # ^ . * Alfavit belgilaridan tilning leksemalari shakllantiriladi: Identifikatorlar; Kalit (xizmatchi yoki zahiralangan) so‘zlar; O‘zgarmaslar; Amallar belgilanishlari; Ajratuvchilar. Bu tillarda tuzilgan dasturlarda izohlar istalgan joyda berilishi mumkin. Ular satriy va blokli ko‘rinishlarda bo’ladi. Satriy izohlar uchun “//”, blokli izohlar uchun “/*”, “*/” belgilari ishlatiladi.
1.2.Dastur tuzilmasi C++ dasturlash tilida dastur quyidagi tarkibda tashkil topadi: Direktivalar – funksiyalar kutubxonasini chaqirish. Ular maxsus include katalogida joylashgan va .h kengaytmali fayllar bo’ladi. С ++ tilida masalaning qo’yilishiga qarab kerakli kutubxonalar chaqiriladi. Bus esa dasturning xotirada egallaydigan joyini minimallashtiradi. Masalan, ma’lumotlarni kiritish-chiqarish proseduralari uchun: #include <stdio.h> tizimdan chaqirish #include “stdio.h” joriy katalogdan chaqirish. C++ dasturlash tili bilan ishlovchi eng sodda dasturlar Dev C++ va CodeBlocks dasturlaridir. Ularning tarkibida 300 dan ortiq kutubxonalar mavjud. Eng ko’p ishlatiladigan kutubxonalar quyidagilar: #include<iostream.h>, 7 #include <math.h> #include <conio.h> #include <graphics.h> #include <memory.h> va boshqalar Makrolar (#define) – dastur bajarilishi davomida o’zgaruvchi ko’rsatilgan qiymatni qabul qilishi uchun (const). Unda makroning nomi va qiymati ko’rsatiladi. Масалан : #define pi 3.1415 #define x 556 #define s[100] #define M x*x*x main () funksiyasi– asosiy degan ma’noni anglatadi. Bu funksiya “{“ belgisidan boshlanadi va dasturning asosini tashkil etuvchi o’zgaruvchilarning toifalari ko’rsatiladi. Dastur “}” belgisi bilan yakunlanishi shart. Agar dasturda qism dasturlardan foydalanilayotgan bo’lsa, ularning nomlari va haqiqiqy parametrlari keltiriladi. So’ngra dasturning asosiy buyruqlari yoziladi. Agar buyruqlar murakkab bo’lsas, ular alohida “{ }” belgilari orasiga olingan bo’lishi
kerak. С ++ tilida dasturning asosi bo’lmish buyruqlar kichik harflar bilan yoziladi. Buyruqlar nuqta-verguk bilan (;) yakunlanadi. Buyruqlar bir qator qilib yozilishi ham mumkin. C++ dasturlash tilida dastur funksiya va funksiyalardan tashkil topadi. Agar dastur bir nechta funksiyalardan tashkil topgan bo’lsa, bir funksiyaning nomi main deb nomlanishi shart. Dastur aynan main funksiyasining birinchi operatoridan boshlab bajariladi. C++ tilidagi dastur ko‘rinishini quyidagi misol yordamida keltirib o‘tamiz. #include <iostream.h> // sarlavha faylni qo‘shish int main () // bosh funksiya tavsifi 8 { // blok boshlanishi cout << “Salom Dunyo! “\n”; // satrni chop etish return 0; // funksiya qaytaradigan qiymat } // blok tugashi Dasturning 1-satrida #include direktivasi bo‘lib, dastur kodiga oqimli o‘qish/yozish funksiyalari va uning o‘zgaruvchilari e’loni joylashgan iostream.h sarlavha faylini qo‘shadi. Keyingi qatorlarda dasturning yagona, asosiy funksiyasi main() funksiyasi tavsifi keltirilgan. Shuni qayd etish kerakki, C++ dasturida albatta main() funksiyasi bo‘lishi shart va dastur shu funksiyani bajarish bilan o‘z ishini boshlaydi. Dastur tanasida konsol rejimi (Consol – rejimi bu MS DOS oynasi ko’rinishiga o’xshash oyna bo’lib, unda foydalanuvchi dastur tuzuishda faqat dastur kodlari bilan ishlaydi. Graphic interface – rejimida esa faqat tilning kodlari bilangina emas muhitning menyulari, komponentalari bilan ham ishlashi mumkin bo’ladi) da belgilar ketma-ketligini oqimga chiqarish amali qo‘llanilgan.
Ma’lumotlarni standart oqimga (ekranga) chiqarish uchun quyidagi format ishlatilgan: cout << <ifoda>; Bu yerda <ifoda> sifatida o‘zgaruvchi yoki sintsksisi to‘g‘ri yozilgan va qandaydir qiymat qabul qiluvchi til ifodasi kelishi mumkin (keyinchalik, burchak qavs ichiga olingan o‘zbekcha satr ostini til tarkibiga kirmaydigan tushuncha deb qabul qilish kerak). cin << a; Ma’lumotlarni klaviatura yordamida kiritish buyrug’i bo’lib, u ham iostream.h kutubxonasi tarkibidagi funksiya hisoblanadi. C++ tilida qiymatlarni kiritish chiqarish uchun C tilidan o‘tgan stdio.h kutubxonasidan foydalaniladi. Bu kutubxonada mavjud funksiyalar klaviatura, printer, terminal kabi qurilmalarni fayl oqimlari sifatida qabul qiladi. Oqim – bu o‘zaro bir jinsli sodir bo‘luvchi xususiyatga ega jarayondir. Oqimlar kutubxonasida fayl ko‘rsatgichlari kabi qayta ishlanadi. Fayl ko‘rsatgichlari – bu 28 oqimda unikal aniqlanib, bajariladigan amal uning parametri sifatida beriladi.Bu kutubxonada 3 ta standart oqim mavjud; stdin,stdout va stderr lar. Bu oqimlar kutubxona chaqirilishi bilan avtomatik tarzda aniqlanadi [4,10]. Oqim xususiyatlar – Oqimlar bir qator xususiyatlarga ega ya‘ni ularda qanday funksiyalardan foydalanishmoqda va ular orqali ma‘lumotlarni chiqarish qanday amalga oshirilmoqda.Oqimlarning bunday xususiyatlarining