如何使用 C 程序将指针分配给函数?

cserver side programmingprogramming更新于 2025/5/15 12:37:17

指向函数的指针

它在内存中保存函数定义的基址。

声明

datatype (*pointername) ();

函数本身的名称指定了函数的基址。因此,使用函数名称进行初始化。

例如,

int (*p) ();
p = display; //display () 是一个已定义的函数。

示例 1

我们将看到一个使用指向函数的指针 − 调用函数的程序

#include<stdio.h>
main (){
   int (*p) (); //声明指向函数的指针
   clrscr ();
   p = display;
   *(p) (); //调用指向函数的指针
   getch ();
}
display (){ //调用的函数位于指针位置
   printf(“Hello”);
}

输出

Hello

示例 2

让我们考虑另一个程序,解释指向函数的指针概念 −

#include <stdio.h>
void show(int* p){
   (*p)++; // 将 1 添加到 *p
}
int main(){
   int* ptr, a = 20;
   ptr = &a;
   show(ptr);
   printf("%d", *ptr); // 21
   return 0;
}

输出

21

相关文章