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

C-তে স্ট্রাকচার এবং ইউনিয়নের পার্থক্য


স্ট্রাকচার

স্ট্রাকচার একটি ইউজার-ডিফাইনড ডেটা টাইপ। এটি ভিন্ন টাইপের ডেটা একসাথে এক টাইপে একত্রিত করতে ব্যবহৃত হয়। এতে একাধিক মেম্বার এবং স্ট্রাকচার ভেরিয়েবল থাকতে পারে। C ভাষায় স্ট্রাকচার ডিফাইন করতে "struct" কীওয়ার্ড ব্যবহার করা হয়। স্ট্রাকচার মেম্বার ডট (.) অপারেটর দিয়ে অ্যাক্সেস করা যায়।

C ভাষায় স্ট্রাকচারের সিনট্যাক্স:

struct structure_name {
    member definition;
} structure_variables;

এখানে,

  • structure_name — স্ট্রাকচারকে দেওয়া যেকোনো নাম।

  • member definition — মেম্বার ভেরিয়েবলগুলোর সেট।

  • structure_variable — এটি স্ট্রাকচারের অবজেক্ট।

C ভাষায় স্ট্রাকচার উদাহরণ:

উদাহরণ

#include <stdio.h>
#include <string.h>
struct Data {
    int i;
    long int f;
} data, data1;
int main() {
    data.i = 28;
    printf("The value of i: %d\n", (data.i));
    printf("Memory size occupied by data: %d\t%d", sizeof(data), sizeof(data1));
    return 0;
}

আউটপুট

The value of i: 28
Memory size occupied by data: 16 16

ইউনিয়ন

ইউনিয়নও একটি ইউজার-ডিফাইনড ডেটা টাইপ। ইউনিয়নের সব মেম্বার একই মেমরি লোকেশন শেয়ার করে। ইউনিয়নের সাইজ ইউনিয়নের সবচেয়ে বড় মেম্বারের সাইজ দ্বারা নির্ণয় হয়। যদি আপনি দুটি বা ততোধিক মেম্বারের জন্য একই মেমরি লোকেশন ব্যবহার করতে চান, তবে ইউনিয়ন সেটি জন্য সেরা।

ইউনিয়ন স্ট্রাকচারের মতোই। ইউনিয়ন ভেরিয়েবল স্ট্রাকচার ভেরিয়েবলের মতোই তৈরি হয়। C ভাষায় ইউনিয়ন ডিফাইন করতে "union" কীওয়ার্ড ব্যবহার করা হয়।

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

union union_name {
    member definition;
} union_variables;

এখানে,

  • union_name — ইউনিয়নকে দেওয়া যেকোনো নাম।

  • member definition — মেম্বার ভেরিয়েবলগুলোর সেট।

  • union_variable — এটি ইউনিয়নের অবজেক্ট।

C ভাষায় ইউনিয়ন উদাহরণ:

উদাহরণ

#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

  1. গ্রাফ এবং ট্রির পার্থক্য

  2. ডেটা টাইপ এবং ডেটা স্ট্রাকচারের পার্থক্য

  3. C#-তে Class এবং Structure-এর পার্থক্য

  4. C#-তে Hashtable এবং Dictionary-এর পার্থক্য