函数指针概念
函数指针的定义
通过函数指针调用函数
函数指针数组
一、函数指针概念
函数的地址存放了函数开始执行的位置(起始地址),存放在函数指针中的内容就是这个地址。
不过,光有地址还不够,如果用函数指针来调用函数,还得知道函数返回值和参数的类型及个数。
二、函数指针的定义(声明)
返回类型 (*指针名)(参数类型)
int (*pn)(int,int);
三、函数指针数组
返回类型 (*指针名[n])(参数类型)
int (*pn[2])(int,int);
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
int add(int a,int b,int d)
{
return a+b+d;
}
int mul(int a,int b,int c)
{
return a*b*c;
}
int main(void)
{
int (*pn[2])(int,int,int);
pn[0]=add;
pn[1]=mul;
printf("%d\n", pn[0](1,3,7) );
printf("%d\n", pn[1](8,3,2) );
getchar();
getchar();
return 0;
}