吾爱程序员:这里有好玩的游戏和软件
当前位置:首页C语言教程 → 如何声明指向函数的指针

如何声明指向函数的指针

来源:网络 | 更新时间:2022-01-17 22:31:13
好吧,我们假设您知道 C 中的指针是什么意思。那么我们如何在 C 中创建指向整数的指针呢?
int * ptrInteger; /*We have put a * operator between int 
and ptrInteger to create a pointer.*/
这里 ptrInteger 是一个指向整数的指针。如果您理解这一点,那么从逻辑上讲,我们在声明指向函数的指针时应该没有任何问题? 那么让我们先看看..我们如何声明一个函数?例如,
int foo(int);
这里 foo 是一个函数,它返回 int 并接受一个 int 类型的参数。所以一个逻辑人会认为,通过在 int 和 foo(int) 之间放置一个 * 运算符应该创建一个指向函数的指针,即
int * foo(int);
但是 C 运算符优先级在这里也起作用..所以在这种情况下,运算符 () 将优先于运算符 *。上面的声明意味着一个函数 foo 具有一个 int 类型的参数和 int * 的返回值,即整数指针。所以它做了一些我们不想做的事情。? 因此,作为下一个合乎逻辑的步骤,我们必须以某种方式将 operator * 与 foo 绑定。为此,我们将使用 () 运算符更改 C 运算符的默认优先级。
int (*foo)(int);
这里 * 运算符带有 foo ,它是一个函数名。它做了我们想做的事情。 所以这并不像我们之前想象的那么难!

最新文章

热点资讯

手游排行榜

CopyRight 2020-2030吾爱程序员

鄂ICP备2021004581号-8

本站资源收集于网络,如有侵权请联系我们:35492删除0109@qq.com