指向函数的指针(函数指针)和指针函数

      在C语言中,一碰到指针,人就比较容易犯晕,尤其是我,虽然知道指针神话了C语言,但也深知指针的麻烦。

      今天看书看到指向函数的指针,顿时又陷入自我混沌状态,这是本着逃避心理的混沌!但是总是要慢慢明白的,所以就根据网络上看到的和书上读到的,在此尽我所能得总结下,以便后续学习回过头来回忆...

      书上说,在C语言中,函数本身不是变量,但可以定义指向函数的指针。这种类型的指针可以被赋值、存放在数组中、传递给函数以及作为函数的返回值等等。这个可以基本说明为什么要有函数指针,我的理解是函数本身不能作为函数参数,所以定义一个指向函数的指针,这样就可以在函数中作为参数使用。这也许是函数指针最重要的用途吧!

      百度百科讲的很明白,函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是一致的。函数指针有两个用途:调用函数和做函数的参数。

      注1:“函数类型”说明函数的返回类型,由于“()”的优先级高于“*”,所以指针变量名外的括号必不可少,后面的“形参列表”表示指针变量指向的函数所带的参数列表。例如:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值