函数指针-C

函数指针-C

函数的名字就是函数的首地址,即函数的入口地址。
函数指针变量就是用来存放函数的地址。

函数指针变量的定义方法

    //返回值类型  (*函数指针变量名)(形参列表)
    int (*p)(int,int);//定义了一个函数指针变量p
    int max(int x,int y){}//定义一个整形函数
    p=max;//用p存放函数的地址

调用函数的方法

  • 通过函数名字取去调用函数
#include 
int max(int x,int y){}

int main()
{
    int num;
    num = max(3,5);
    
    return 0;
}
  • 通过函数指针变量去调用
#include 
int max(int x,int y){}

int main()
{
    int num;
    int (*p)(int,int);
    p = max;
    num = p(3,5);
    
    return 0;
}

函数指针最常用的是:将一个函数作为参数传递给另一个函数。这个函数称为回调函数。

#include 
int add(int x,int y)
{
    return x+y;
}

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

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

int dive(int x,int y)
{
    return x/y;
}

int process(int (*p)(int,int),int a,

你可能感兴趣的:(C语言,嵌入式,c语言,算法,开发语言)