सूचक और संदर्भ के बीच अंतर
लेखक:
Laura McKinney
निर्माण की तारीख:
1 अप्रैल 2021
डेट अपडेट करें:
1 जुलाई 2024
विषय
"सूचक" और "संदर्भ" दोनों का उपयोग किसी अन्य चर को इंगित करने या संदर्भित करने के लिए किया जाता है। लेकिन, दोनों में मूल अंतर यह है कि एक पॉइंटर वैरिएबल एक वैरिएबल की ओर इशारा करता है, जिसकी मेमोरी लोकेशन इसमें स्टोर होती है। संदर्भ चर एक चर के लिए एक उपनाम है जिसे इसे सौंपा गया है। नीचे दिए गए तुलना चार्ट एक सूचक और एक संदर्भ के बीच अन्य अंतरों की पड़ताल करते हैं।
- तुलना चार्ट
- परिभाषा
- मुख्य अंतर
- निष्कर्ष
तुलना चार्ट
तुलना के लिए आधार | सूचक | संदर्भ |
---|---|---|
बुनियादी | सूचक एक चर का मेमोरी एड्रेस है। | संदर्भ एक चर के लिए एक उपनाम है। |
रिटर्न | पॉइंटर वेरिएंट पॉइंटर वैरिएबल में रखे पते पर स्थित मान लौटाता है जो कि पॉइंटर साइन * से पहले होता है। | संदर्भ चर संदर्भ चिह्न और पूर्ववर्ती चर का पता देता है। |
ऑपरेटर्स | *, -> | & |
अशक्त संदर्भ | सूचक चर NULL को संदर्भित कर सकता है। | संदर्भ चर NULL का संदर्भ कभी नहीं दे सकता। |
प्रारंभ | एक असिंचित पॉइंटर बनाया जा सकता है। | एक असंवैधानिक संदर्भ कभी नहीं बनाया जा सकता है। |
प्रारंभ का समय | कार्यक्रम में किसी भी बिंदु पर सूचक चर को आरंभ किया जा सकता है। | संदर्भ चर को इसके निर्माण के समय केवल आरंभ किया जा सकता है। |
reinitialization | पॉइंटर वैरिएबल को आवश्यकता के अनुसार कई बार रीइंस्ट्रिक्ट किया जा सकता है। | संदर्भ चर को कार्यक्रम में फिर से पुन: व्यवस्थित नहीं किया जा सकता है। |
पॉइंटर की परिभाषा
एक "पॉइंटर" एक चर है जो दूसरे चर की मेमोरी लोकेशन रखता है। सूचक चर द्वारा उपयोग किए गए ऑपरेटर * और -> हैं। पॉइंटर वैरिएबल की घोषणा में आधार डेटा प्रकार होता है जिसके बाद sign * का चिन्ह और परिवर्तनशील नाम होता है।
प्रकार * var_name;
एक उदाहरण की मदद से पॉइंटर को समझते हैं।
int a = 4; int * ptr = & a; cout <जबकि, संदर्भ ऑपरेटर & है।
ध्यान दें:
जावा पॉइंटर्स का समर्थन नहीं करता है।
निष्कर्ष
सूचक और संदर्भ दोनों का उपयोग किसी अन्य चर को इंगित करने या संदर्भित करने के लिए किया जाता है। लेकिन उनके उपयोग और कार्यान्वयन में भिन्नता है।