首页 > 其他 > 详细

函数指针

时间:2021-09-22 21:24:09      阅读:22      评论:0      收藏:0      [点我收藏+]

前言

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


函数指针的声明方法

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

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

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

f = &func;

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

#include <cstdio>
#include<cstdlib>
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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!