Union হলো একটি ইউজার-ডিফাইনড ডেটা টাইপ। Union-এর সব মেম্বার একই মেমরি লোকেশন শেয়ার করে। Union-এর আকার Union-এর সবচেয়ে বড় মেম্বারের আকার দ্বারা নির্ধারিত হয়। আপনি যদি দুই বা ততোধিক মেম্বারের জন্য একই মেমরি লোকেশন ব্যবহার করতে চান, তবে union সেটির জন্য সেরা।
Union-গুলো স্ট্রাকচারের সাথে সাদৃশ্যপূর্ণ। Union ভেরিয়েবল স্ট্রাকচার ভেরিয়েবল মতোই তৈরি হয়। সি ভাষায় union ডিফাইন করার জন্য union কিওয়ার্ড ব্যবহার করা হয়।
সি ভাষায় union-এর সিনট্যাক্স:
union union_name {
member definition;
} union_variables;
এখানে,
- union_name − unionকে দেওয়া যেকোনো নাম।
- member definition − মেম্বার ভেরিয়েবল সেট।
- union_variable − union-এর অবজেক্ট।
সি ভাষায় union-এর উদাহরণ:
উদাহরণ
#include <stdio.h>
#include <string.h>
union Data {
int i;
float f;
}data, data1;
int main( ) {
printf( "Memory size occupied by data : %d\t%d", sizeof(data), sizeof(data1));
return 0;
}
আউটপুট
Memory size occupied by data : 4 4
উপরের প্রোগ্রামে Data নামে একটি union তৈরি করা হয়েছে union-এর অবজেক্টসহ।
union Data {
int i;
float f;
}data, data1;