跳到主要内容

简述什么是函数指针 ?

参考答案:

函数指针是一种特殊的指针类型,它存储了函数的内存地址,而不是通常的数据值。通过这个地址,我们可以间接地调用函数。在C和C++这样的语言中,函数指针是一个常见的概念。

函数指针的声明通常包括返回类型、函数名和参数列表,但是它不包括参数的值。例如,如果我们有一个函数如下:

int add(int a, int b) {
    return a + b;
}

我们可以创建一个指向这个函数的函数指针,如下所示:

int (*func_ptr)(int, int);

在这个例子中,func_ptr 是一个指向接受两个 int 参数并返回 int 值的函数的指针。

一旦我们有了这个指针,我们就可以用它来调用函数,如下所示:

func_ptr = add;
int result = func_ptr(3, 4);  // 调用 add 函数,返回 7

函数指针在C和C++编程中有很多用途,包括实现回调函数、创建函数表、实现高阶函数等。然而,由于C++有类和对象等更强大的抽象工具,所以在C++中,函数指针的使用相对较少,但在C语言中,函数指针的使用非常普遍。