9.02 函数指针的数组简明用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了9.02 函数指针的数组简明用法相关的知识,希望对你有一定的参考价值。

#include <stdio.h>

int sum(int,int);
int product(int,int);
int different(int,int);

int main(void)
{
    int a = 10;
    int b = 5 ;
    int result = 0;
    int (*pfun[3])(int,int);
    
    //其实也可以这样用,int (*pfun[3])(int,int) = {sum,product,different};
    pfun[0] = sum;
    pfun[1] = product ;
    pfun[2] = different ;

    for(size_t i = 0;i<3;i++)
    {
        result = pfun[i](a,b);
        printf("result = %2d\n",result);
    }

    result = pfun[1](pfun[0](a,b),pfun[2](a,b));
    printf("混合结果为 %2d\n",result);
    return 0;
}

int sum(int x,int y)
{
    return x+y;
}

int product(int x,int y)
{
    return x*y;
}

int different(int x,int y)
{
    return x-y;
}

 

以上是关于9.02 函数指针的数组简明用法的主要内容,如果未能解决你的问题,请参考以下文章

C 语言数组 ( 指针数组用法 | 命令行参数处理 )

一篇文章将你的指针升华

函数指针和指针函数用法和区别

Go语言 | 03 数组指针切片用法

Go语言 | 03 数组指针切片用法

---数组和指针的常见用法