কম্পিউটার টিউটোরিয়াল

সি ভাষায় ইউনিয়ন অফ স্ট্রাকচার (Union of Structures) কনসেপ্ট

ইউনিয়ন অফ স্ট্রাকচার কী?

যদি একটি স্ট্রাকচারকে ইউনিয়ার ভিতরে নেস্ট (nested) করা হয়, তাকে ইউনিয়ন অফ স্ট্রাকচার বলা হয়। সি-তে স্ট্রাকচারের ভিতরেও ইউনিয়ন তৈরি করা যায়।

উদাহরণ ১: স্ট্রাকচার ইউনiyanın ভিতরে

#include <stdio.h>

struct X {
    int a;
    float b;
};

union Z {
    struct X s;
};

int main() {
    union Z u;
    u.s.a = 10;
    u.s.b = 30.5;
    printf("a = %d\n", u.s.a);
    printf("b = %f\n", u.s.b);
    return 0;
}

আউটপুট

a = 10
b = 30.5

উদাহরণ ২: পয়েন্টারের সাথে ইউনিয়ন

#include <stdio.h>

union abc {
    int a;
    char b;
} v;

int main() {
    v.a = 90;
    union abc *p = &v;

    printf("a = %d\n", v.a);      // 90
    printf("b = %c\n", v.b);      // 'Z' (ASCII 90)
    printf("a = %d, b = %c\n", p->a, p->b); // 90, Z
    printf("Size = %d\n", sizeof(union abc)); // 4
    return 0;
}

আউটপুট

a = 90
b = Z
a = 90, b = Z
4

মনে রাখার বিষয়

  • ইউনiyanın সাইজ = তার সবচেয়ে বড় মেম্বারের সাইজ।
  • ইউনিয়নে একবারে শুধু একটি মেম্বার ভ্যালু ধারণ করতে পারে।
  • স্ট্রাকচার ইউনিয়ন ভিতরে থাকলে, স্ট্রাকচারের সাইজই ইউনিয়নের সাইজ হবে (যদি সেটিই সবচেয়ে বড় হয়)।
  1. C ভাষায় ক্যারেক্টার অপারেশন ব্যাখ্যা

  2. সি ভাষায় ইউনিয়ন টু পয়েন্টার ব্যাখ্যা

  3. সি ভাষায় পয়েন্টার অ্যাক্সেসিং ধারণা ব্যাখ্যা

  4. C#-তে ক্লাস কনসেপ্ট ব্যাখ্যা