关于函数指针的使用

Q:

void func0(void);
void func1(void);
void func2(void);
void func3(void);
void func4(void);
void func5(void);

int MAIN(int N)
{
    if(== 0) 执行func0;
    if(== 1) 执行func1;
    if(== 2) 执行func2;
    if(== 3) 执行func3;
    if(== 4) 执行func4;
    if(== 5) 执行func5;
}

实现以上功能,要求不使用 if 或是 switch 判断语句。

 

A: 这是函数指针数组的典型应用。

 

void func0(void);
void func1(void);
void func2(void);
void func3(void);
void func4(void);
void func5(void);

 

void (*func[6])(void);

 

int MAIN(int N)
{
    func[0] = func0;

    func[1] = func1;

    func[2] = func2;

    ...

    func[5] = func5;

 

    func[N]();
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值