1-tajriba ishi. Ma’lumotlarning oddiy sozlangan toifalari
Download 54.71 Kb.
|
1-tajriba ishi. Ma’lumotlarning oddiy sozlangan toifalari-fayllar.org
- Bu sahifa navigatsiya:
- 1.3.6. Birlashmalar (union)
1.3.5. Strukturalar
Strukturalar turli toifadagi maydonlardan tashkil topgan yozuv hisoblanadi. Strukturalarni e’lon qilish uchun struct kalit so‘zi ishlatiladi. Undan keyin toifaga nom beriladi va {} qavs ichida maydonlar toifalari va nomlari e’lon qilinadi. struct G{ char ch; } talaba, talabalar[10]; Yaratilgan toifa bilan e’lon qilingan o‘zgaruvchi talaba - yozuv hisoblanadi, massiv esa talabalar[10] - jadvalni tashkil etadi. Yozuv va jadval yozuvi maydoniga qiymat berish quyidagicha: yozuv.maydon_nomi=qiymat; Masalan: talaba.ch=’a’; Agar jadval yozuvi maydoniga qiymat beriladigan bo‘lsa, bunda jadval yozuv massivi shaklida tashkil qilinadi va shu massiv elementiga indeks bilan murojaat orqali amalga oshiriladi: Jadval_elementi[indeks].maydon_nomi=qiymat; Ya’ni, talabalar[i].ch=’a’; Misol. Talabalar tartib raqami va ism-familiyasidan iborat jadval tuzib, ma’lumotlarni kiritish va ekranga chiqarish dasturi. #include using namespace std; int main( { struct Guruh{ int n; char fio[30]; }; Guruh talaba[5]; for(int i=0;i<5;i++){ talaba[i].n=i+1; cin>>talaba[i].fio; } for(int i=0;i<5;i++) cout< system("pause"); }
union { 1-elementni tavsiflash; ... n-elementni tavsiflash; }; Birlashmalarning asosiy xususiyati shuki, e’lon qilingan har bir element uchun xotiraning bitta hududi ajratiladi, ya’ni ular bir-birini qoplaydi. Bu yerda xotiraning shu qismiga istalgan element bilan murojaat qilsa bo‘ladi, lekin buning uchun element shunday tanlanishi kerakki, olinadigan natija ma’noga ega bo‘lishi kerak. Birlashmaning elementiga murojaat xuddi struktura elementiga murojaat kabi amalga oshiriladi. Birlashmalar qo‘llaniladigan xotira obyektini initsializatsiya qilish maqsadida ishlatiladi, agarda har bir murojaat vaqtida bir qancha obyektlardan faqat bittasi faollashtirilsa. Birlashma toifasidagi o‘zgaruvchi uchun ajratiladigan xotira hajmi ushbu toifaning eng uzun elementi uchun ketadigan xotira hajmi bilan aniqlanadi. Kichik uzunlikdagi element ishlatilganda, birlashma toifasidagi o‘zgaruvchi uchun ajratilgan xotira sohasining ayrim qismi ishlatilmaydi. Birlashmaning barcha elementi uchun xotiraning bitta adresdan boshlanuvchi bitta sohasi ajratiladi. Masalan: union { char fio[30]; char adres[80]; int yoshi; int telefon; } inform; union { int ax; char al[2]; } ua;
#include using namespace std; int main() { union Guruh{ int n;
int m; };
Guruh w; w.n=12;// w birlashmasining n elementiga qiymat berish w.m=23; // w birlashmasining m elementiga qiymat berish cout<
system("pause"); }
Download 54.71 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling