Accessing Address through Pointer

Accessing Address through Pointer: Pointer Variable Declare करके उस Pointer Variable को वांछित Variable का Address Initialize करने के बाद, जब हमें Pointer Variable को Access करना होता है, तब हमें * Indirection Operator को Use करना पडता है। इसे सामान्‍य तौर पर Value at the Address Operator भी कहा जाता है। यानी किसी Pointer Variable में Stored Address जिस Variable का है, उस Variable का मान प्राप्त करने के लिए इस Operator का प्रयोग किया जाता है।

जैसे ptr में character नाम के Variable का Address Stored है और हम ptr द्वारा character में Store अक्षर x को Output मे Print करना चाहते हैं तो हमें निम्न Statement देना होगा-

      printf(“\n Value At the Address %u of Variable character is %c”, ptr, *ptr);

यहां ptr Output मे character की Storage Cell का Address Print करता है और *ptr, Output में अक्षर character नाम के Variable में Store अक्षर x को Print करता है।

*ptr “C” Compiler को ये बताता है कि Pointer Variable ptr में जिस Variable के Storage Cell का Address Store है (यहां Pointer Variable में character के Storage Cell का Address Store है।) उस Address पर जो मान स्थित है (यहां अक्षर x Stored है) उसे Output में Screen पर Print कर दो।

इस प्रकार से किसी Pointer Variable में स्थित Address जिस Variable का हो उस Variable का मान Output में यदि Print करना हो, तो हमें * Operator के साथ उस Pointer Variable को Use करना पडता है।

अब हम एक उदाहरण देखते हैं जिसमें Address Operator & व Indirection Operator * को साथ में प्रयोग करके कुछ Assignment किये गए हैं।

Accessing Address through Pointer

इस Output से स्पष्‍ट है कि Variable character का Output 65535 है और & character Expression से Pointer Variable ptr में character का Address Store हो गया है। इसीलिए दूसरे Output में ptr में स्थित Address का मान भी 65535 है। तीसरे Output में character Variable में Stored अक्षर x को सामान्‍य तरीके से Print किया गया है।

चौथे Output में ये बताया गया है कि Pointer Variable ptr में 65535 Address Stored है। (हमें प्रथम Output से पता है कि ये character नाम के Variable की Storage Cell का पता है।) इस Address पर अक्षर x Stored है। इस Output को *ptr Argument द्वारा Output में Print किया गया है, जो कि वास्तव में character का ही मान Print कर रहा है।

new1 = *ptr; Statement द्वारा new1 में Pointer Variable ptr में Stored Address के Variable का मान Assign किया गया है जो कि character x है और इसे ही पांचवे Output में Print किया गया है।

इस प्रकार से & जहां Address of the Variable बताता है यानी कि कोई मान किस Address पर Stored है। वहीं * Value at the Address बताता है यानी कि किसी Address पर क्या मान Stored है। (Accessing Address through Pointer – Wiki)

C Programming Language in Hindi - BccFalna.com ये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook  C Programming Language in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C Programming Language in Hindi | Page: 477 + 265 | Format: PDF

BUY NOW GET DEMO REVIEWS