C++中函数指针的使用
来源:互联网 发布:c语言file的使用方法 编辑:程序博客网 时间:2024/06/05 16:42
函数的地址是存储其机器语言代码的内存的开始地址。
1、获取函数的地址
直接使用函数名(不跟参数)即可。
2、声明函数指针
返回类型 (*pf) (参数列表)
函数原型: double pam(int);
指针类型: double (*pf)(int)
3、使用函数指针来调用被指向的函数
pf =pam;
以下两种格式都可以(C++都允许):
double x= pf(5);
doube y= (*pf)(5)
4、使用typedef 进行简化
typededouble (*p_func) (int )
p_funcpf;
将p_func作为函数指针的原型
示例:
#include <iostream>using namespace std;const double * f1(const double ar[],int n);const double * f2(const double [] ,int);const double * f3(const double *,int );typedef const double * (*p_func)(const double * ,int );int main(){double av[3] = {111.3,1542.6,2227.9};//pointer to a function//const double *(*p1)(const double *,int )=f1;//const double *(*p2)(const double *,int )=f2;p_func p1 = f1;p_func p2 = f2;cout<<"Using pointers to functions:\n";cout<<"Address Value\n";cout<<(*p1)(av,3)<<": "<<*(*p1)(av,3)<<endl;cout<<p2(av,3)<<": "<<*p2(av,3)<<endl;//const double *(*pa[3])(const double *,int )={f1,f2,f3};//const double *(**pb)(const double *,int) = pa;p_func pa[3] = {f1,f2,f3};p_func * pb = pa;cout<<"\nUsing an array of pointers to functions:\n";cout<<"Address Values\n";for(int i=0;i<3;++i)cout<<pa[i](av,3)<<": "<<*pa[i](av,3)<<endl;for(int i=0;i<3;++i)cout<<pb[i](av,3)<<": "<<*pb[i](av,3)<<endl;cout<<"Using pointers to an array of pointers:\n";cout<<"Address Values\n";p_func (*pc)[3];pc = &pa;const double * pdb = (*pc)[1](av,3);cout<<pdb<<" : "<<*pdb<<endl;}const double * f1(const double * ar,int n){return ar;}const double *f2(const double ar[],int n){return ar+1;}const double * f3(const double ar[],int n){return ar+2;}
0 0
- c中函数指针的使用
- C 中typedef 函数指针的使用
- C函数指针的使用
- c 函数指针的使用
- C / C++ 类中使用函数指针的小例子
- C语言中函数指针的简单使用
- 指针, 指针的指针, 数组, 指针数组, 数组指针, 指针函数, 函数指针 C/C++中函数指针的含义
- 【C/C++】函数中指针的传递
- c语言中函数指针与指针函数的区别
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- C/C++中函数指针的含义
- eclipse工程手动迁移android-studio
- HTML学习03
- 查询商品价格
- 亿阳信通图像处理工程师
- 【HDU3038】【加权并查集】
- C++中函数指针的使用
- 安装JDK及环境变量设置
- vs调试技巧的总结
- php相对路径的写法
- UGUI(一)List列表的封装
- 应届生的求职之路
- C#订阅模式
- SEA创建、网卡聚合
- js如何将字符串转成日期