一个c语言的传参问题。

heaven_wsh 2009-07-21 07:44:06
void preorder(bitree t,void(*visit)telemtype& e){}对于参数void(*virit)(telemtype& e)这种传参形式没有见到过,不是很理解,有高手路过详细解释下,手机发帖,没输大写,还请见谅。
...全文
136 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ies_sweet 2009-07-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hz_yck 的回复:]
void(*virit)(telemtype&  e)函数指针
[/Quote]

UP
KevinHo 2009-07-22
  • 打赏
  • 举报
回复
这第二个参数是个函数指针,它返回一个函数的地址
其中 void是函数的返回值类型 (*virit)是这个指向函数的指针,virit是指针的名字,
(telemtype &e)是函数的参数表,参数e用的是引用传地址
jlp999 2009-07-22
  • 打赏
  • 举报
回复
函数指针:void(*virit)(telemtype& e)

1 (*virit) virit是指针;指向
2 void (telemtype& e)即指向telemtype&参数,void返回值的函数
RJS_April 2009-07-22
  • 打赏
  • 举报
回复
函数指针
heaven_wsh 2009-07-21
  • 打赏
  • 举报
回复
懂了,谢谢各位!即时散分。
mstlq 2009-07-21
  • 打赏
  • 举报
回复
具体例子一个

void show(telemtype& e)
{/*do something*/};

void test(telemtype& e)
{/*do something*/};

int main()
{
bitree st;
preorder(st,show);//看这里
preorder(st,test);////看这里

return 0;
};
hz_yck 2009-07-21
  • 打赏
  • 举报
回复
void(*virit)(telemtype& e)函数指针
xu044 2009-07-21
  • 打赏
  • 举报
回复
这里需要一个函数指针,也就是说preorder的第二个参数应该是个函数地址,这个函数的原型应该为
void fun( telemtype &e );

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧