1. 首页
  2. 直播平台

C/C++函数指针的定义、赋值与使用

函数指针不同于指针的地方就是函数指针所储存的地址为函数,而普通指针的地址为变量地址。

其通用表达式为:类型说明符(*函数名)(参数)>int(*fun)(intx)//函数指针的定义>>int(*fun)(intx,inty)//函数指针的定义函数指针在PC软件开发中使用较少,在嵌入式行业使用较多,但是无论是PC软件还是嵌入式软件,理解函数指针的定义和使用,对于理解程序设计都是很有好处的。

**研究总结**我们之前学习指针主要是学习数据类型的指针,这类指针的特点是存储一地址,这个地址存放的是指定的空间,而函数指针指向的是一个函数。

指针函数的本身是一个函数,其函数的返回值是一个指针。

【实例】用指针来实现对函数的调用。

在主函数中,把输入的整数i作为实参,在printf语句中调用day_name函数并把i值传送给形参n。

所以合起来这个语句的意思就是:定义了一个指针变量p,该指针变量可以指向返回值类型为int型,且有两个整型参数的函数。

函数返回类型是某一类型的指针类型标识符*函数名(参数表)int*f(x,y);首先它是一个函数,只不过这个函数的返回值是一个地址值。

例如,intfunc(intx);/*声明一个函数*/int(*f)(intx);/*声明一个函数指针*/f=func;/*将func函数的首地址赋给指针f*/赋值时函数func不带括号,也不带参数,由于func代表函数的首地址,因此经过赋值以后,指针f就指向函数func(x)的代码的首地址。

评分 0, 满分 5 星
0
0
看完收藏一下,下次也能找得到
  • 版权声明:本文基于《知识共享署名-相同方式共享 3.0 中国大陆许可协议》发布,转载请遵循本协议
  • 文章链接:http://www.supreme-men.com/zbpt/31.html [复制] (转载时请注明本文出处及文章链接)
  • 本文无相关文章
上一篇:
:下一篇

发表评论

gravatar

沙发空缺中,还不快抢~