函数指针是指向函数的指针变量,可以用来存储函数的地址。通过函数指针,可以在程序运行时动态地调用不同的函数。
在C语言中,声明一个函数指针的方法是将返回类型和参数列表写在指针名的前面,并加上圆括号和星号。例如,下面的代码声明了一个指向返回类型为int,参数列表为空的函数的指针变量ptr。
int (*ptr)();
通过函数指针变量可以调用相应的函数。例如,下面的代码将函数foo的地址赋值给指针变量ptr,并通过指针变量ptr调用函数foo。
int foo() {
printf("Hello, world!\n");
return 0;
}
int main() {
int (*ptr)();
ptr = foo;
ptr();
return 0;
}
这样就可以在运行时动态地调用不同的函数,从而实现了灵活的函数调用。