"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > हम C/C++ में Jagged Arrays को कैसे कार्यान्वित कर सकते हैं?

हम C/C++ में Jagged Arrays को कैसे कार्यान्वित कर सकते हैं?

2024-11-17 को प्रकाशित
ब्राउज़ करें:544

How Can We Implement Jagged Arrays in C/C  ?

सी/सी में दांतेदार सरणी को समझना

जबकि दांतेदार सरणी की अवधारणा, जहां पंक्तियों की लंबाई अलग-अलग हो सकती है, सीधे तौर पर समर्थित नहीं है मानक सी/सी, समान कार्यक्षमता प्राप्त करने की तकनीकें हैं।

सी/सी में एक दांतेदार सरणी घोषित करने का प्रयास करने पर नीचे दिखाया गया है:

int jagged[][] = { {0,1}, {1,2,3} };

कंपाइलर त्रुटियों को उजागर करता है, की आवश्यकता पर प्रकाश डालता है पहले को छोड़कर सभी आयामों के लिए सीमाएं निर्दिष्ट करना। इस सीमा को दूर करने के लिए, एक वैकल्पिक दृष्टिकोण पॉइंटर्स की एक सरणी का उपयोग कर रहा है। सूचकों की एक श्रृंखला. इस सरणी का प्रत्येक तत्व एक गतिशील रूप से आवंटित उपसरणी की ओर इशारा करता है, जहां प्रत्येक उपसरणी की अपनी अलग-अलग लंबाई होती है।

उदाहरण के लिए:

int *jagged[5]; // प्रत्येक उपसरणी को मेमोरी असाइन करें दांतेदार [0] = मॉलोक (आकार (int) * 10); दांतेदार [1] = मॉलोक (आकार (int) * 3); //तत्वों तक पहुँचना *दांतेदार[0] = 0; *(जंजीर[0] 1) = 1; *दांतेदार[1] = 1; *(दांतेदार[1] 1) = 2; *(दांतेदार[1] 2) = 3; // उपयोग के बाद मुफ्त मेमोरी मुफ़्त(जंजीर[0]); free(jagged[1]);

यह विधि एक दांतेदार सरणी के व्यवहार का अनुकरण करते हुए, विभिन्न आकारों की पंक्तियों के साथ सरणियों के निर्माण की अनुमति देती है। यह ध्यान रखना महत्वपूर्ण है कि प्रत्येक उपसरणी के लिए मेमोरी को गतिशील रूप से आवंटित किया जाना चाहिए और मेमोरी लीक से बचने के लिए मैन्युअल रूप से मुक्त किया जाना चाहिए।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3