গঠন
কাঠামো একটি ব্যবহারকারী সংজ্ঞায়িত ডেটাটাইপ। এটি একটি একক ধরনের মধ্যে বিভিন্ন ধরনের ডেটা একত্রিত করতে ব্যবহৃত হয়। এতে একাধিক সদস্য এবং গঠন ভেরিয়েবল থাকতে পারে। "struct" কীওয়ার্ডটি C ভাষায় কাঠামোকে সংজ্ঞায়িত করতে ব্যবহৃত হয়। ডট(.) অপারেটর ব্যবহার করে কাঠামোর সদস্যদের অ্যাক্সেস করা যেতে পারে।
এখানে সি ভাষায় কাঠামোর সিনট্যাক্স রয়েছে,
struct structure_name { member definition; } structure_variables;
এখানে,
-
কাঠামো_নাম − স্ট্রাকচারে দেওয়া যেকোনো নাম।
-
সদস্যের সংজ্ঞা − সদস্য ভেরিয়েবলের সেট।
-
কাঠামো_পরিবর্তনশীল - এটি গঠনের বস্তু।
এখানে সি ল্যাঙ্গুয়েজে গঠনের একটি উদাহরণ দেওয়া হল,
উদাহরণ
#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 union_name { member definition; } union_variables;
এখানে,
-
ইউনিয়নের_নাম − ইউনিয়নকে দেওয়া যেকোনো নাম।
-
সদস্যের সংজ্ঞা − সদস্য ভেরিয়েবলের সেট।
-
ইউনিয়ন_ভেরিয়েবল - এটি হল মিলনের উদ্দেশ্য৷
এখানে 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