#include<stdio.h>
#include<stdlib.h>
int jia(int a, int b)//函数名就存储代码段的首地址
{
return a + b;
}
int jian(int a, int b)
{
return a - b;
}
int cheng(int a, int b)
{
return a * b;
}
int chu(int a, int b)
{
return a / b;
}
void main1()
{
int(*p)(int a, int b) = jia;//存储函数指针的地址
//jia = jia;//函数名是常量指针,不可被修改
printf("%d\n",p(1,2));
p = jian;
printf("%d\n", p(1, 2));
getchar();
}
void main2()
{
//int a;
//int a[10];//数组
//int *a[10];//指针数组
int(*p[4])(int a, int b) = { jia,jian,cheng,chu };//函数指针数组
for (int i = 0; i < 4; i++)//用数组管理函数指针
{
printf("%d\n", p[i](10, 2));
}
getchar();
}
函数指针学习
最新推荐文章于 2018-07-29 19:33:10 发布