理解函数中的指针

Understanding pointers in functions

所以我一直在研究指针,试图理解它们。

我知道在下面一行

int f(int ni, int n);

f 是一个函数,它接受两个 int 变量作为输入,returns 一个 int 作为结果

如果我写下一行

int (*f)(int ni, int n);

那么f是一个函数指针

但是,当我写类似的东西时会发生什么?

int (*f[4])(int p);

感谢您的帮助。

这是一个包含 4 个函数指针的数组,示例:

int foo(int p) {
    return 0;
}

int (*f[4])(int p);
f[0] = foo;
f[1] = foo;
f[2] = foo;
f[3] = foo;

参考这个 link :

Array functions pointer

有关于它的作用和实现方式的解释