O‘zbekiston respublikasi oliy va o‘rta maxsus ta’lim vazirligi tоshkеnt dаvlаt iqtisоdiyot universitеti
bob. MURAKKAB MA’LUMOTLAR TURLARI
Download 1.96 Mb. Pdf ko'rish
|
Obyektga yo`naltirilgan dasturlash tillari
- Bu sahifa navigatsiya:
- 3.2.Tuzilmalar va jamlanmalar
3 bob. MURAKKAB MA’LUMOTLAR TURLARI
3.2. Yangi ma’lumotlar turlarini kiritish Agar har xil qiymatlarga ega bir nechta nomlangan konstanta kiritish kerak bo‘lsa sanovchi tipdan foydalanish mumkin: enum Konstantalar butun bo‘lishi kerak va initsializatsiya qilinishi mumkin, agar initsializator mavjud bo‘lmasa birinchi konstanta nol qiymat oladi, kolganlari bo‘lsa oldingisidan birga ortiq bo‘ladi. Misol uchun: enum{one=1,two=2,three=3}; Agar son qiymatlari ko‘rsatilmagan bulsa eng chapki so‘zga 0 qiymati berilib kolganlariga tartib buyicha usuvchi sonlar mos kuyiladi: Enum{zero,one,two}; Bu misolda avtomatik ravishda konstantalar quyidagi qiymatlarni kabul kiladi: Zero=0, one=1, two=2; Konstantalar aralash ko‘rinishda kiritilishi ham mumkin: Enum(zero,one,for=4,five,seeks}. Bu misolda avtomatik ravishda konstantalar quyidagi qiymatlarni kabul kiladi: Zero=0, one=1, for=4;five=5,seeks=6; Nomlangan sanovchi tip kiritib, shu tipdagi o‘zgaruvchilar, ko‘rsatkichlar va ilovalardan foydalanish mumkin. Masalan: enum color (black, green, yellow, blue, red, white); color col=red; color* cp=&col; if (*cp==green) cout<<”yashil”; 3.2.Tuzilmalar va jamlanmalar Struktura – bu ma’lumotlarni bir butun nomlangan elementlar to‘plamiga birlashtirish. Struktura elementlari (maydonlar) har xil tipda bo‘lishi mumkin va ular har xil nomlarga ega bo‘lishi kerak. 33 Strukturali tip quyidagicha aniqlanadi: struct { Strukturada albatta bitta komponenta bo‘lishi kerak. Struktura tipidagi o‘zgaruvchi quyidagicha ta’riflanadi: Struktura tipidagi o‘zgaruvchi ta’riflanganda initsializatsiya qilinishi mumkin: Strukturani initsializatsiyalash uchun uning elementlar qiymatlarini figurali qavslarda tavsiflanadi. Misollar: 1. struct Student { char name[20]; int kurs; float rating; }; Student s={”Qurbonov”,1,3.5}; 2. struct { char name[20]; char title[30]; float rate; }employee={“Ashurov", “direktor”,10000}; Strukturalarni o‘zlashtirish. Bitta tuzilma tipdagi o‘zgaruvchilar uchun o‘zlashtirish operatsiyasi aniqlangan. Bunda har bir elementdan nusxa olinadi. Masalan: Student ss=s; Struktura elementlariga murojaat. Struktura elementlariga murojaat aniqlangan ismlar yordamida bajariladi: 34 Masalan: employee.name – «Ashurov» satriga ko‘rsatkich; employee.rate – 10000 qiymatga ega bo‘lgan butun tipdagi o‘zgaruvchi Strukturaga ko‘rsatkichlar. Strukturaga ko‘rsatkichlar oddiy ko‘rsatkichlar kabi tasvirlanadi: Student*ps; Strukturaga ko‘rsatkich ta’riflanganda initsializatsiya kilinishi mumkin: Student *ps=&mas[0]; Ko‘rsatkich orqali struktura elementlariga ikki usulda murojaat qilish mumkin. Birinchi usul adres buyicha qiymat olish amaliga asoslangan bo‘lib quyidagi shaklda qo‘llaniladi: (* strukturaga ko‘rsatkich).element nomi; Ikkinchi usul maxsus strelka (->) amaliga asoslangan bo‘lib quyidagi ko‘rinishga ega: strukturaga ko‘rsatkich->element nomi Struktura elementlariga quyidagi murojaatlar uzaro tengdir: cin>>(*ps).name; cin>>ps->title; Download 1.96 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling