高手求救,关于C++的简单问题,我想问一下,typedef int(*lpAddFun)(int, int);表示什么意思啊
答案:4 悬赏:40 手机版
解决时间 2021-04-29 02:58
- 提问者网友:末路
- 2021-04-28 16:32
高手求救,关于C++的简单问题,我想问一下,typedef int(*lpAddFun)(int, int);表示什么意思啊
最佳答案
- 五星知识达人网友:千杯敬自由
- 2021-04-28 17:17
首先你要明白函数指针的概念
int *p(int ,int );//声明一个函数
int (*p)(int ,int);声明一个函数指针
typedef int(*lpAddFun)(int, int);
就是把这个类型的函数指针的声明变为lpAddfun;
哪里不明白可以追问
int *p(int ,int );//声明一个函数
int (*p)(int ,int);声明一个函数指针
typedef int(*lpAddFun)(int, int);
就是把这个类型的函数指针的声明变为lpAddfun;
哪里不明白可以追问
全部回答
- 1楼网友:琴狂剑也妄
- 2021-04-28 20:29
typedef int(*lpAddFun)(int, int);
int func(int a,int b)
{
return a+b;
}
lpAddFu ptr = func;
ptr(1,2);
定义一个指向函数的指针类型
给你一个例子:
int func(int a,int b)
{
return a+b;
}
lpAddFu ptr = func;
ptr(1,2);
定义一个指向函数的指针类型
给你一个例子:
- 2楼网友:话散在刀尖上
- 2021-04-28 20:02
你好;
这其实是一个定义函数指针为另一个名称;
为了便于理解:拆分为:typedef int(*) (int ,int) lpAddFun
即一个带有2个int形式参数,返回值为int的函数指针;给这样的函数指针指定一个别名:lpAddFun
最后建议你去了解一下函数指针;
这其实是一个定义函数指针为另一个名称;
为了便于理解:拆分为:typedef int(*) (int ,int) lpAddFun
即一个带有2个int形式参数,返回值为int的函数指针;给这样的函数指针指定一个别名:lpAddFun
最后建议你去了解一下函数指针;
- 3楼网友:佘樂
- 2021-04-28 18:34
之后你就能使用 lpAddFun 来定义变量。
lpAddFun p ;
表示 p 是一个函数指针,能接受2个int类型参数,返回int值。
如:
int max(int x,int y){ return(x>y?x:y);
lpAddFun p = max;
int a = (*p)(2, 3)
====> a为3
lpAddFun p ;
表示 p 是一个函数指针,能接受2个int类型参数,返回int值。
如:
int max(int x,int y){ return(x>y?x:y);
lpAddFun p = max;
int a = (*p)(2, 3)
====> a为3
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯