স্ট্রাকচার হলো বিভিন্ন ডেটা টাইপের ভেরিয়েবলগুলোর একটি সংকলন, যেগুলো একটি নামের অধীন গোষ্ঠীভূত থাকে।
স্ট্রাকচার ঘোষণার সাধারণ রূপ
স্ট্রাকচার ঘোষণাটি নিচের মতো −
struct tagname{ datatype member1; datatype member2; datatype member n; };এখানে, struct হলো কিওয়ার্ড।
tagname স্ট্রাকচারের নাম নির্দেশ করে।
member1, member2 স্ট্রাকচার গঠনকারী ডেটা আইটেমগুলোর নির্দেশ করে।
উদাহরণ
নিচের উদাহরণটি লোকাল স্কোপে স্ট্রাকচার ব্যবহারের 모습을 보여준다।
struct book{ int pages; char author[30]; float price; };উদাহরণ
নিচের প্রোগ্রামটি লোকাল স্কোপে স্ট্রাকচার ব্যবহারের 모습을 보여준다।
#includestruct{ char name[20]; int age; int salary; char add[30]; }emp1,emp2; int manager(){ struct{ // লোকাল স্কোপে স্ট্রাকচার char name[20]; int age; int salary; char add[50]; }manager; manager.age=27; if(manager.age>30) manager.salary=650000; else manager.salary=550000; return manager.salary; } int main(){ printf("emp1-এর নাম লিখুন: "); // gets(emp1.name); scanf("%s",emp1.name); printf("\nemp1-এর ঠিকানা লিখুন: "); scanf("%s",emp1.add); printf("\nemp1-এর বেতন লিখুন: "); scanf("%d",&emp1.salary); printf("\nemp2-এর নাম লিখুন: "); // gets(emp2.name); scanf("%s",emp2.name); printf("\nemp2-এর ঠিকানা লিখুন: "); scanf("%s",emp2.add); printf("\nemp2-এর বেতন লিখুন: "); scanf("%d",&emp2.salary); printf("\nemp1 বেতন হলো %d",emp1.salary); printf("\nemp2 বেতন হলো %d",emp2.salary); printf("\nম্যানেজার বেতন হলো %d",manager()); return 0; }
আউটপুট
উপরোক্ত প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যায় −
emp1-এর নাম লিখুন: Bob emp1-এর ঠিকানা লিখুন: Hyderabad emp1-এর বেতন লিখুন: 500000 emp2-এর নাম লিখুন: Hari emp2-এর ঠিকানা লিখুন: Chennai emp2-এর বেতন লিখুন: 450000 emp1 বেতন হলো 500000 emp2 বেতন হলো 450000 ম্যানেজার বেতন হলো 550000