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

C ভাষায় স্ট্রাকচারের ইউনিয়ন কী?


C প্রোগ্রামিং ভাষায় ইউনিয়ন হলো একটি মেমরি লোকেশন যা বিভিন্ন ডেটা টাইপের ভেরিয়েবলগুলো দ্বারা শেয়ার করা হয়।

সিনট্যাক্স

ইউনিয়ন অফ স্ট্রাকচারের সিনট্যাক্স নিচে দেওয়া হলো −

union uniontag{ datatype member 1; datatype member 2; ---- ---- datatype member n; };

উদাহরণ

নিচের উদাহরণটি স্ট্রাকচারের ইউনিয়ন ব্যবহারের 모습을 보여준다 −

union sample{ int a; float b; char c; };

ইউনিয়ন ভেরিয়েবল ঘোষণা

নিচে ইউনিয়ন ভেরিয়েবল ঘোষণার তিনটি পদ্ধতি দেওয়া হলো −

পদ্ধতি ১

union sample{ int a; float b; char c; }s;

পদ্ধতি ২

union{ int a; float b; char c; }s;

পদ্ধতি ৩

union sample{ int a; float b; char c; }; union sample s;
  • ইউনিয়ন ঘোষণা করার সময়, কম্পাইলার স্বয়ংক্রিয়ভাবে ইউনিয়নের ভেরিয়েবলগুলিকে ধারণ করতে সবচেয়ে বড় আকারের ভেরিয়েবল টাইপ তৈরি করে।

  • কোনো সময়ে, শুধুমাত্র একটি ভেরিয়েবলকে রেফার করা যায়।

ইনিশিয়ালাইজেশন এবং অ্যাক্সেস

  • ইউনিয়ন মেম্বার অ্যাক্সেস করতে স্ট্রাকচারের মতোই সিনট্যাক্স ব্যবহার করা হয়।

  • ডট অপারেটর (.) মেম্বার অ্যাক্সেসের জন্য ব্যবহৃত হয়।

  • অ্যারো অপারেটর (->) পয়েন্টার ব্যবহার করে মেম্বার অ্যাক্সেসের জন্য ব্যবহৃত হয়।

নমুনা প্রোগ্রাম ১

নিচের প্রোগ্রামটি স্ট্রাকচারের ইউনিয়ন ব্যবহারের 모습을 보여준다।

union sample{ int a; float b; char c; } main ( ){ union sample s = {10, 20.5, "A"}; printf("a=%d",s.a); printf("b=%f",s.b); printf("c=%c",s.c); }

আউটপুট

উপরোক্ত প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যায় −

a = গার্বেজ ভ্যালু b = গার্বেজ ভ্যালু c = A

স্ট্রাকচারের ইউনিয়ন

  • একটি স্ট্রাকচার ইউনিয়নের ভিতরে নেস্টেড থাকতে পারে এবং এটিকে স্ট্রাকচারের ইউনিয়ন বলা হয়।

  • একটি স্ট্রাকচারের ভিতরে ইউনিয়ন তৈরি করা সম্ভব।

নমুনা প্রোগ্রাম ২

স্ট্রাকচারের ইউনিয়ন ব্যবহারের 모습을 보여주는 আরেকটি C প্রোগ্রাম নিচে দেওয়া হলো −

struct x{ int a; float b; }; union z{ struct x s; }; main ( ){ union z u; u.s.a = 10; u.s.b = 30.5; printf("a=%d", u.s.a); printf("b=%f", u.s.b); }

আউটপুট

উপরোক্ত প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যায় −

a= 10 b = 30.5

  1. C ভাষায় strcmp() ফাংশন কী?

  2. সি ভাষায় অ্যানোনিমাস ইউনিয়ন ও স্ট্রাকচার (Anonymous Union and Structure)

  3. C# প্রোগ্রামিং কী? (What is C# Programming?)

  4. C#-এ স্ট্রাকচার (Structure) কী এবং এর বৈশিষ্ট্যসমূহ