指向函数的指针

指针函数就是专门用来存放函数代码首地址的变量。在程序中可以像使用函数名一样的使用指向函数的指针来调用函数。也就是说一旦函数指针指向了某个函数,它与函数名便具有同样的作用。函数名在表示函数代码起始地址的同时,也包括函数的返回值类型和参数的个数、类型、排列次序等信息。
声明一个函数指针时,也需要说明函数的返回值、形式参数表,其一般语法:
数据类型(*函数指针名)(形参表)————————数据类型说明函数所指函数的返回值类型

函数指针在使用之前也要进行赋值,使指针指向一个已经存在的函数代码的起始地址。一般语法为:
函数指针名=函数名; 等号右边的函数名所指出的必须是一个已经声明过的、和函数指针具有相同返回类型和相同形参表的函数。在赋值之后,就可以通过函数指针名来直接引用这个指针指向的函数。

#include<iostream>
using namespace std;
void printstuff(float)
{
    cout<<"this is the print stuff function."<<endl;
}
void printmessage(float data)
{
    cout<<"the data to be listed is "<<data<<endl;
}
const float pi=3.14159f;
const float two_pi=pi*2.0f;
int main()
{
    void(*functionpointer)(float);
    printstuff(pi);
    functionpointer=printstuff;//函数指针指向printstuff
    functionpointer(pi);//函数指针调用
    functionpointer=printmessage;//函数指针指向printmessage
    functionpointer(two_pi);//函数指针调用
    functionpointer(13.0);//函数指针调用
    return 0;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值