1-misol. birlashma_tur toifasidagi o‘zgaruvchini e’lon qilish va uning xotira hajmini aniqlash dasturi.
Berilgan masalaning dastur kodi quyidagicha:
#include
using namespace std;
int main(){
union birlashma_tur {
int a;
char b;
};
birlashma_tur K;
int d;
K.a = 20;
K.b = ‘w’;
d = sizeof(K);// d=4
cout<
}
Birlashma e’lon qilinganda, kompilyator avtomatik ravishda birlashmada mavjud bo‘lgan eng katta o‘zgaruvchini saqlash uchun yetarli bo‘lgan hajmdagi o‘zgaruvchini yaratadi. Birlashma tarkibidagi elementlarga murojaat qilish uchun “nuqta” (.) yoki “strelka” () operatoridan foydalaniladi.
To‘g‘ridan-to‘g‘ri birlashma bilan ishlash uchun “nuqta” operatoridan foydalanish lozim. Agar birlashma o‘zgaruvchisiga ko‘rsatgich yordamida murojaat qilinsa, “strelka” operatoridan foydalaniladi. Masalan, birlashma_tur birlashmasining a elementiga 50 butun sonini berish uchun quyidagi dastur kodi yoziladi:
birlashma_tur.a=50;
Birlashmalardan foydalanish bizga kompyuter xotirasidan mustaqil (ko‘chma) kod yaratishda yordam beradi. Kompilyator birlashmani tashkil etuvchi o‘zgaruvchilarning haqiqiy o‘lchamlarini kuzatib borganligi sababli, kompyuterga bog‘liqlikni kamaytiradi. Bunda o‘zgaruvchilar butun yoki haqiqiy son, belgilar yoki boshqa tipda bo‘lishi ahamiyatga ega emas.
Foydalanuvchi tomonidan aniqlangan berilganlar turi
Misol va masalalarni dasturlashda, ishlov berilishi kerak bo‘lgan ma’lumotlar murakkab tuzilishga ega bo‘lishi mumkin. Uning yetarli darajada namoyish etilishi uchun oddiy ma’lumotlar turlari, massivlar va ko‘rsatgichlar asosida qurilgan ma’lumotlar turlaridan foydalaniladi. C ++ tili dasturchiga o‘zlarining ma’lumotlar turlarini va ular bilan ishlash qoidalarini belgilashga imkon beradi. Bunday turlar dasturchi tomonidan belgilangan turlar deb ataladi.
Do'stlaringiz bilan baham: |