स्ट्रक्चर अलग-अलग डेटा टाइप्स के वेरिएबल्स का संग्रह है, जिन्हें एक ही नाम के तहत समूहित किया गया है।
स्ट्रक्चर घोषणा का सामान्य रूप
स्ट्रक्चर घोषणा निम्नलिखित है:
struct tagname {
datatype member1;
datatype member2;
datatype memberN;
};
यहां, struct कीवर्ड है।
tagname स्ट्रक्चर का नाम निर्दिष्ट करता है।
member1, member2 उन डेटा आइटम्स को निर्दिष्ट करते हैं जो स्ट्रक्चर बनाते हैं।
उदाहरण
निम्नलिखित उदाहरण लोकल स्कोप पर स्ट्रक्चर के उपयोग को दर्शाता है:
struct book {
int pages;
char author[30];
float price;
};
उदाहरण: लोकल स्कोप पर स्ट्रक्चर का उपयोग करने वाला प्रोग्राम
#include <stdio.h>
struct {
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 का नाम दर्ज करें: ");
scanf("%s", emp1.name);
printf("\nemp1 का पता दर्ज करें: ");
scanf("%s", emp1.add);
printf("\nemp1 का वेतन दर्ज करें: ");
scanf("%d", &emp1.salary);
printf("\nemp2 का नाम दर्ज करें: ");
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 है