知识点概括:
1.函数指针定义
2.函数回调
3.动态排序
4.函数返回值是函数指针
函数指针:指向函数的指针变量
定义一个函数指针,名字为p, 指向了一个返回值类型为int,并且有两个整型参数的函数
int (*p)(int x, int y) = NULL;
指针变量赋值,函数地址
函数名代表函数的首地址
p = minValue; //p 指向了minValue函数
当把函数地址赋给指针变量p之后,指针变量p就可以当做函数名使用
回调函数就是函数指针作为函数参数,调用时传递对应的函数的地址
使用返回得函数指针调用函数,完成动态调用
typedef struct student {
char name[20]; //存储姓名
int age; //存储年龄
float score; //存储成绩
}Student;
//输出所有学生信息
void printAllStudentInfo(Student *p, int count) {
for (int i = 0; i < count; i++) {
printf("%s %d %.1f \n", (p + i)->name, (p + i)->age, (p + i)-&g