#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();
}函数指针学习
最新推荐文章于 2019-03-30 16:09:58 发布
本文通过具体的C语言代码示例介绍了如何使用函数指针来动态调用不同的数学运算,包括加、减、乘、除,并展示了如何利用函数指针数组进行函数管理。
2643

被折叠的 条评论
为什么被折叠?



