कार्य करने के लिए सूचक
यह स्मृति में फ़ंक्शन परिभाषा का आधार पता रखता है।
घोषणा
datatype (*pointername) ();
फ़ंक्शन का नाम ही फ़ंक्शन के आधार पते को निर्दिष्ट करता है। तो, फ़ंक्शन नाम का उपयोग करके आरंभीकरण किया जाता है।
उदाहरण के लिए,
int (*p) (); p = display; //display () is a function that is defined.
उदाहरण 1
हम फ़ंक्शन को पॉइंटर का उपयोग करके फ़ंक्शन को कॉल करने के लिए एक प्रोग्राम देखेंगे -
#include<stdio.h>
main (){
int (*p) (); //declaring pointer to function
clrscr ();
p = display;
*(p) (); //calling pointer to function
getch ();
}
display (){ //called function present at pointer location
printf(“Hello”);
} आउटपुट
Hello
उदाहरण 2
आइए एक अन्य प्रोग्राम पर विचार करें जो कार्य करने के लिए पॉइंटर की अवधारणा को समझाता है -
#include <stdio.h>
void show(int* p){
(*p)++; // add 1 to *p
}
int main(){
int* ptr, a = 20;
ptr = &a;
show(ptr);
printf("%d", *ptr); // 21
return 0;
} आउटपुट
21