阅读 57

函数指针

前言

函数在内存中有一个物理地址,该地址是可以赋给一个指针的,这就是函数指针
函数指针有两个用途:调用函数做函数的参数


函数指针的声明方法

返回类型值 (*指针变量名)([形参列表]);
例如:

int func(int x); /* 声明一个函数 */
int (*f) (int x); /* 声明一个函数指针 */
f=func; /* 将func函数的首地址赋给指针f */

或者使用下面的方法将函数地址赋给函数指针:

f = &func;

赋值时函数func不带括号,也不带参数,由于func代表函数的首地址,因此经过赋值以后,指针f就指向函数func(x)的代码的首地址。

#include 
#include
int max(int a,int b){
    if(a>b)
        return a;
    else
        return b;
}
int main(){
    int(*pmax)(int a,int b);
    int x,y,z;
    pmax=max;
    printf("input two numbers:\n");
    scanf("%d%d",&x,&y);
    z=(*pmax)(x,y);
    printf("maxnum=%d",z);
    system("pause");
}

原文:https://www.cnblogs.com/Carl-lc/p/15307648.html

文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐