मैं एक लिंक्ड सूची का उपयोग करके एक स्टैक को कार्यान्वित करना चाहता हूं।समस्या निवारण डबल पॉइंटर
मेरे ढेर के लिए पॉप() को लागू करने के लिए, मेरे पास कॉलर एक डबल पॉइंटर (पॉइंटर को पॉइंटर) पास करता है (अंततः) मेरे स्टैक (लिंक की गई सूची में पहली प्रविष्टि) के शीर्ष पर इंगित करता है।
कारण मैं इसे इस तरह से कर रहा हूं क्योंकि इस तरह कॉलर स्टैक पर स्थिर सूचक रख सकता है।
मेरे लिंक्ड सूची तत्व struct:
struct Element {
int value;
struct Element *next;
};
पॉप() कार्यान्वयन:
int pop (struct Element **stack) {
int popped_value = *stack->value;
*stack = *stack->next;
return popped_value;
}
मुद्दा मैं डबल सूचक ** ढेर भिन्नता की कोशिश कर रहा है। ,
error: request for member ‘value’ in something not a structure
error: request for member ‘next’ in something not a structure
मेरे मन में या तो * stack-> मूल्य या ** stack.value popped_value पुनः प्राप्त करने के काम करना चाहिए, लेकिन मैं समान त्रुटि मिलती है: यह कोड निम्न त्रुटि उत्पन्न करता है।
बस अच्छे ओल 'स्टैक का उपयोग करें -> अगला' – Kapichu