今天,在做课程设计时,在结构体中用到了函数指针。所以,在这里和大家share一下哈!
#include <stdio.h>
//几个用于测试的函数
int max(int a, int b)
{
return a>b?a:b;
}
int min(int a, int b)
{
return a<b?a:b;
}
//结构体
struct func
{
int (*max)(int, int);//函数指针
int (*min)(int, int);
};
typedef struct func func; //添加别名
void init(func *data)
{
data->max = max;//初始化函数指针
data->min = min;
}
int main()
{
int a, b;
func test;
init(&test); //初始化,你可以说它是构造函数
a = test.max(100, 215);
b = test.min(64, 42);
printf("result:\nmax: %d\nmin: %d\n", a, b);
return 0;
}

本文通过一个具体的课程设计实例介绍了如何在C语言中使用函数指针,并展示了如何将函数指针应用于结构体中,实现灵活的功能选择,如最大值和最小值的计算。
1288

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



