Pointer to a Pointer(Double Pointer)
पॉइंटर्स का उपयोग समान डेटा प्रकार के अन्य variable के address को संग्रहीत करने के लिए किया जाता है। लेकिन अगर आप पॉइंटर वैरिएबल के एड्रेस को स्टोर करना चाहते हैं, तो आपको इसे स्टोर करने के लिए फिर से पॉइंटर की जरूरत होगी। इस प्रकार, जब एक पॉइंटर वैरिएबल दूसरे पॉइंटर वैरिएबल के address को स्टोर करता है, तो इसे पॉइंटर टू पॉइंटर वेरिएबल या डबल पॉइंटर के रूप में जाना जाता है।
Syntax:
यहां हमने दो indirection operator(*) का उपयोग किया है जो एक पॉइंटर variable के address पर स्टोर करता है और इंगित करता है, अर्थात, nt *। अगर हम इस (double pointer) वेरिएबल p1 के address को स्टोर करना चाहते हैं
Simple program to represent Pointer to a Pointer
output
Address of a = 2686724
Address of p1 = 2686728
Address of p2 = 2686732
Value at the address stored by p2 = 2686724
Value at the address stored by p1 = 10
Value of **p2 = 10
Explanation of the above program
1. p1 पॉइंटर वैरिएबल केवल वैरिएबल a (यानी अप्रत्यक्ष ऑपरेटर की संख्या (*)-1 वैरिएबल) के address को hold सकता है। इसी तरह, P2 वैरिएबल केवल वेरिएबल p1 का address hold सकता है। यह variable का address नहीं hold सकता है।
2. *p 2 हमें p2 पॉइंटर द्वारा संग्रहीत address पर value देता है। p2 p1 सूचक के address को संग्रहीत करता है और p1 के address पर variable a का address है। इस प्रकार, *P2 का address print करता है।
3. **P2 को *(*P2) के रूप में पढ़ा जा सकता है। इसलिए, यह हमें पता *P2 पर store value देता है। उपरोक्त कथन से, आप जानते हैं *P2 का अर्थ है variable का address। इसलिए, address *p2 पर मान 10 है। इस प्रकार, ** p2 10 प्रिंट करता है।
0 Comments
Please don't Add spam links,
if you want backlinks from my blog contact me on rakeshmgs.in@gmail.com