কম্পিউটার

C ভাষায় কাঠামোর মিলন কি?


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

সিনট্যাক্স

কাঠামোর মিলনের জন্য সিনট্যাক্স নিম্নরূপ -

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

উদাহরণ

নিম্নলিখিত উদাহরণটি কাঠামোর মিলনের ব্যবহার দেখায় −

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

ইউনিয়ন পরিবর্তনশীলের ঘোষণা

নিম্নলিখিত ইউনিয়ন পরিবর্তনশীল জন্য ঘোষণা. এটি নিম্নরূপ -

তিন প্রকার

টাইপ 1

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

টাইপ 2

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

টাইপ 3

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

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

শুরু করা এবং অ্যাক্সেস করা

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

  • ডট অপারেটর সদস্যদের অ্যাক্সেস করার জন্য।

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

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

নিম্নলিখিত প্রোগ্রামটি কাঠামোর মিলনের ব্যবহার দেখায়।

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 = garbage value
b = garbage value
c = A

কাঠামোর মিলন

  • একটি কাঠামো একটি ইউনিয়নের ভিতরে বাসা বাঁধতে পারে এবং একে বলা হয় কাঠামোর ইউনিয়ন।

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

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

আরেকটি সি প্রোগ্রাম যা কাঠামোর মিলনের ব্যবহার দেখায় -

নীচে দেওয়া হল
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. সি তে বেনামী ইউনিয়ন এবং কাঠামো

  3. C# প্রোগ্রামিং কি?

  4. C# এ একটি কাঠামো কি?