Defining Pointers
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhE1RfMuh0YD5fjxv6ahdWCp6c4b-qXI6Rw1yOgYoH1nIZQKEXtduwRFexfPAzqpbWqW2hkFziloornWjeAQ4lIRvVKE9e57MstFFhrCFe7_2TLqX7hKx2ZTKTV6z6r9Ti-JYbvoUnSkR-vobtj5_0xyzreQl2nn5uzYD9K-bAVYGQxTO0aDMjb_FSW/w640-h480/Defining%20Pointers.jpg)
Defining Pointers
जब हमें किसी Variable
में किसी अन्य Variable की Storage
Cell का Address Store करना होता है , तब हम
इस Variable को Pointer प्रकार का Declare
करते हैं | Pointer
Variable भी उसी प्रकार से Declare किये जाते
हैं , जिस प्रकार से अन्य सामान्य Variables Declare किये
जाते हैं | किसी Variable
को Pointer प्रकार का Declare करने के लिए उसे * चिन्ह के साथ Declare करते हैं | इसके
Declaration
का Syntax निम्नानुसार होता है –
DataType *Pointer_Variable_name;
ऊपर बताए उदाहरण में यदि हमें Variable (character) की Storage Cell का Address 2000 किसी Variable में Store करना हो , तो एक अन्य Variable ptr Declare करना होगा , जो कि Pointer प्रकार का होगा | इसे हम निम्नानुसार करेंगे :
char *ptr;
किसी भी Variable
के Storage Cell के Address द्वारा उस Variable के मान को Access करने के लिए उस Variable के Storage Cell के Address को किसी अन्य Pointer प्रकार के Variable
में Store करना इसलिए जरुरी होता है , क्योंकि
हम किसी भी Memory Storage Cell को बिना किसी Variable
में Store किये Access नहीं
कर सकते |
यहां ध्यान से इस
Pointer
Variable के Declaration को देखें तो सवाल
दिमाग में आ सकता है कि एक Pointer Variable में केवल किसी
अन्य Variable का Address ही Store
हो सकता है और कोई भी Address एक Unsigned
Integer ही होता है , तो फिर यहां इस Pointer ptr को char प्रकार का क्यों Declare किया गया है , int प्रकार का क्यों नहीं किया गया ?
ऐसा इसलिए किया
गया है क्योंकि ये Data Type “C” Compiler को
बताता है , कि इस Pointer Variable में जिस Variable की Storage Cell का Address Store होगा , वह char प्रकार का ही हो सकता है |
यानी
हम एक int
प्रकार के Variable के Address को char प्रकार के Pointer Variable में Store नहीं कर सकते हैं |
char प्रकार
का ये Pointer Variable “C” Compiler को ये बताता है कि हम
जिस Variable के Address को Access
कर रहे हैं , वो char प्रकार का है और char प्रकार का ये Variable
, Memory में एक Byte की Space Reserve
करता है |
इस प्रकार यदि
हमें किसी int प्रकार के Variable का Address किसी Pointer Variable में Store करना हो तो Pointer Variable को भी int प्रकार
का ही Declare करना होगा |
तभी
“C”
Compiler समझ पाएगा कि इस Pointer Variable में
जिस Variable का Address Store है वह int
प्रकार का मान Store करता है और memory
में दो Byte की Space Use करता है |
No comments