C Language in Hindi – Dereference Pointer

C dereference pointer in c in hindi

Dereference pointer in C in Hindi

जैसा कि हम पहले से ही जानते हैं कि “एक पॉइंटर क्या है” , एक पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल के address को स्टोर करता है। dereference operator को एक indirection ऑपरेटर के रूप में भी जाना जाता है, जिसे (*) द्वारा दर्शाया जाता है। जब pointer variable के साथ indirection operator (*) का उपयोग किया जाता है, तो इसे dereferencing a pointer कहा जाता है। जब हम एक पॉइंटर को dereference करते हैं, तो इस पॉइंटर द्वारा point किये गए वेरिएबल का मान वापस आ जाएगा।

Why we use dereferencing?

निम्न कारणों से dereference a pointer का उपयोग किया जाता है:

  • इसका उपयोग मेमोरी स्थान पर संग्रहीत डेटा तक पहुंचने या manipulate करने के लिए किया जा सकता है, जो pointer द्वारा point किया गया है।
  • Dereferenced पॉइंटर पर लागू कोई भी ऑपरेशन सीधे उस variable के मूल्य को प्रभावित करेगा जो इसे point करता है।

आइए एक पॉइंटर को dereference करने के लिए निम्नलिखित चरणों का पालन करें।

  • सबसे पहले, हम integer variable को point करते हैं, जिसकी तरफ pointer point करता है।

 

  • Int x=9 ;   

 

  • अब, हम integer pointer variable घोषित करते हैं।

 

  • Int *ptr;   

 

  • Integer pointer variable की घोषणा के बाद, हम pointer variable ‘ptr’ में ‘x’ variable का पता संग्रहीत करते हैं।

 

  • ptr=&x;  

 

  • हम नीचे दिए गए अनुसार एक पॉइंटर ‘ptr’ को dereferencing करके ‘x’ वेरिएबल का मान बदल सकते हैं:

 

  • *ptr =8;  

 

उपरोक्त पंक्ति ‘x ’वेरिएबल के मान को 9 से 8 तक बदल देती है क्योंकि ‘ptr’ ‘x ’स्थान की ओर इशारा करता है और ‘ptr’ की dereferencing, अर्थात, *ptr=8 x के मान को अपडेट करेगा।

आइए उपरोक्त सभी चरणों को मिलाएं:

  1. #include <stdio.h>  
  2. int main()  
  3. {  
  4.     int x=9;  
  5.     int *ptr;  
  6.     ptr=&x;  
  7.     *ptr=8;  
  8.     printf(“value of x is : %d”, x);  
  9.     return 0;}  

Output

C dereference pointer

Let’s consider another example.

  1. #include <stdio.h>  
  2. int main()  
  3. {  
  4.     int x=4;  
  5.     int y;  
  6.     int *ptr;  
  7.     ptr=&x;   
  8.     y=*ptr;  
  9.     *ptr=5;  
  10.     printf(“The value of x is : %d”,x);  
  11.     printf(“\n The value of y is : %d”,y);  
  12.     return 0;  
  13. }  

 

उपरोक्त कोड में:

  • हम दो variables ‘x’ और ‘y’ घोषित करते हैं, जहाँ ‘x’ एक ‘4’ मान रखता है।
  • हम एक पॉइंटर variable ‘ptr’ की घोषणा करते हैं।
  • पॉइंटर वेरिएबल की घोषणा के बाद, हम पॉइंटर ‘ptr’ को ‘x’ वेरिएबल का पता देते हैं।
  • जैसा कि हम जानते हैं कि ‘ptr’ में ‘x’ वेरिएबल का पता है, इसलिए  ‘*ptr’ ‘x’ के समान है।
  • हम ‘ptr’ वेरिएबल की मदद से ‘x’ का मान ‘y’ को असाइन करते हैं, यानी y=*ptr (‘x’ वेरिएबल का उपयोग किये बिना)

Output

C dereference pointer

Let’s consider another scenario.

    1. #include <stdio.h>  
    2. int main()  
    3. {  
    4.    int a=90;  
    5.    int *ptr1,*ptr2;  
    6.    ptr1=&a;  
    7.    ptr2=&a;  
    8.    *ptr1=7;  
    9.    *ptr2=6;  
    10.     printf(“The value of a is : %d”,a);  
    11.     return 0;  
    12. }  

 

 

उपरोक्त कोड में:

  • सबसे पहले, हम ‘a’ वेरिएबल घोषित करते हैं।
  • फिर हम दो पॉइंटर्स घोषित करते हैं, यानी, ptr1 और ptr2.
  • दोनों pointers में ‘a’ वेरिएबल का address है।
  • हम *ptr1 को ‘7’ मान और *ptr2 को ‘6’ प्रदान करते हैं। ‘a’ का अंतिम मान ‘6’ होगा।

Output 

C dereference pointer

Leave a Reply

DMCA.com Protection Status