इस लेख में, आप C ++ प्रोग्रामिंग में संरचनाओं के बारे में जानेंगे; यह क्या है, इसे कैसे परिभाषित करें और अपने कार्यक्रम में इसका उपयोग करें।
संरचना एक नाम के तहत विभिन्न डेटा प्रकारों के चर का संग्रह है। यह उस वर्ग के समान है, दोनों अलग-अलग डेटा प्रकारों के डेटा का एक संयोजन है।
उदाहरण के लिए: आप किसी व्यक्ति के बारे में कुछ जानकारी संग्रहीत करना चाहते हैं: उसका नाम, नागरिकता संख्या और वेतन। आप इन सूचनाओं को अलग से संग्रहीत करने के लिए अलग-अलग चर नाम, सिटो, वेतन आसानी से बना सकते हैं।
हालाँकि, भविष्य में, आप कई व्यक्तियों के बारे में जानकारी संग्रहीत करना चाहेंगे। अब, आपको प्रति व्यक्ति प्रत्येक जानकारी के लिए अलग-अलग चर बनाने होंगे: name1, citNo1, salary1, name2, citNo2, salary2
आप आसानी से कल्पना कर सकते हैं कि कोड कितना बड़ा और गन्दा लगेगा। इसके अलावा, चूंकि चर (सूचना) के बीच कोई संबंध नहीं होगा, यह एक चुनौतीपूर्ण काम होने जा रहा है।
एक बेहतर दृष्टिकोण एक ही नाम के तहत सभी संबंधित जानकारी का एक संग्रह होगा Person
, और हर व्यक्ति के लिए इसका उपयोग करेगा। अब, कोड बहुत साफ, पठनीय और कुशल दिखता है।
एकल नाम के तहत सभी संबंधित जानकारी का यह संग्रह Person
एक संरचना है।
C ++ प्रोग्रामिंग में संरचना कैसे घोषित करें?
struct
कीवर्ड एक संरचना प्रकार एक पहचानकर्ता (संरचना का नाम) द्वारा पीछा परिभाषित करता है।
फिर घुंघराले ब्रेसिज़ के अंदर, आप उस संरचना के एक या एक से अधिक सदस्यों (घुंघराले ब्रेसिज़ के अंदर चर घोषित) की घोषणा कर सकते हैं। उदाहरण के लिए:
स्ट्रक्चर पर्सन (चार नाम; 50 वर्ष; अंतर आयु; अस्थायी वेतन;);
यहां एक संरचना व्यक्ति को परिभाषित किया गया है जिसके तीन सदस्य हैं: नाम, आयु और वेतन।
जब एक संरचना बनाई जाती है, तो कोई मेमोरी आवंटित नहीं की जाती है।
संरचना की परिभाषा केवल चर बनाने के लिए खाका है। आप इसे डेटाटाइप के रूप में कल्पना कर सकते हैं। जब आप एक पूर्णांक को नीचे के रूप में परिभाषित करते हैं:
int foo;
int
निर्दिष्ट करता है कि, चर foo केवल पूर्णांक तत्व पकड़ कर सकते हैं। इसी तरह, संरचना की परिभाषा केवल यह निर्दिष्ट करती है कि, एक संरचना परिवर्तनशील होने पर कौन सी संपत्ति रखती है।
नोट: अर्धविराम (;) के साथ घोषणा को समाप्त करना याद रखें
एक संरचना चर को कैसे परिभाषित किया जाए?
एक बार जब आप ऊपर के रूप में एक संरचना व्यक्ति की घोषणा करते हैं। आप एक संरचना चर को परिभाषित कर सकते हैं:
व्यक्ति का बिल;
यहाँ, एक स्ट्रक्चर वेरिएबल बिल को परिभाषित किया गया है जो कि टाइप स्ट्रक्चर P का है erson
।
जब संरचना चर को परिभाषित किया जाता है, तो केवल आवश्यक मेमोरी को संकलक द्वारा आवंटित किया जाता है।
आपके पास 32-बिट या 64-बिट सिस्टम को ध्यान में रखते हुए, float
4 बाइट्स की मेमोरी है int
, 4 बाइट्स की मेमोरी है और char
1 बाइट की मेमोरी है।
इसलिए, संरचना चर बिल के लिए स्मृति के 58 बाइट्स आवंटित किए जाते हैं।
किसी संरचना के सदस्यों तक कैसे पहुंचें?
संरचना चर के सदस्यों को एक डॉट (।) ऑपरेटर का उपयोग करके एक्सेस किया जाता है ।
मान लीजिए, आप संरचना चर बिल की आयु का उपयोग करना चाहते हैं और इसे 50 को असाइन करते हैं। आप नीचे दिए गए कोड का उपयोग करके इस कार्य को कर सकते हैं:
बिल.पेज = 50;
उदाहरण: C ++ संरचना
C ++ प्रोग्राम एक स्ट्रक्चर वेरिएबल के सदस्यों को डेटा असाइन करने और इसे प्रदर्शित करने के लिए।
#include using namespace std; struct Person ( char name(50); int age; float salary; ); int main() ( Person p1; cout << "Enter Full name: "; cin.get(p1.name, 50); cout <> p1.age; cout <> p1.salary; cout << "Displaying Information." << endl; cout << "Name: " << p1.name << endl; cout <<"Age: " << p1.age << endl; cout << "Salary: " << p1.salary; return 0; )
आउटपुट
पूरा नाम दर्ज करें: मागदालेना डानकोवा उम्र दर्ज करें: 27 वेतन दर्ज करें: 1024.4 सूचना प्रदर्शित करना। नाम: मगदलीना दनकोवा आयु: 27 वेतन: 1024.4
यहां एक संरचना व्यक्ति को घोषित किया गया है जिसके तीन सदस्य नाम, आयु और वेतन हैं।
main()
फ़ंक्शन के अंदर , एक संरचना चर p1 परिभाषित किया गया है। फिर, उपयोगकर्ता को जानकारी दर्ज करने के लिए कहा जाता है और उपयोगकर्ता द्वारा दर्ज डेटा प्रदर्शित किया जाता है।
आपको इन संरचना संबंधी ट्यूटोरियल की भी जांच करनी चाहिए:
- कार्यों के लिए संरचना कैसे पारित करें?
- संरचनाओं के साथ पॉइंटर्स का उपयोग कैसे करें?