原创 指向函数的指针数组收藏

新一篇: 回调函数(资料汇集) | 旧一篇: 南山

void Input(ST *);
void Output(ST *);
void Bubble(ST *);
void Find(ST *);
void Failure(ST *);
/*函数声明:这五个函数都是以一个指向ST型(事先定义过)结构的指针变量作为参数,无返回值。*/

void (*process[5])(ST *)={Input,Output,Bubble,Find,Failure};
/*process被调用时提供5种功能不同的函数供选择(指向函数的指针数组)*/

printf("\nChoose:\n?");
scanf("%d",&choice);
if(choice>=0&&choice<=4)
(*process[choice])(a); /*调用相应的函数实现不同功能*;/

发表于 @ 2004年09月02日 16:19:00|评论(loading...)|编辑

新一篇: 回调函数(资料汇集) | 旧一篇: 南山

评论

#simon 发表于2004-09-02 16:34:00  IP: 218.17.77.*
定义指向函数的指针数组时,因为各函数在前面声明过,所以此时的函数名相当于给该数组赋初值。
各元素指向相应的函数,具有实际的意义。
#wangwh 发表于2004-09-03 09:12:00  IP: 219.140.112.*
呵呵,这么猥琐的做法,我也用过,用的是member 函数指针数组,主要是为了顺序的调用函数的不同组合。
#wzrthhj 发表于2005-05-27 11:38:00  IP: 61.186.252.*
太强了,

这样好的思路我怎么就没想到呢?
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © flydeveloper