函数指针---C/C++中int *f(4)和int (*f)(4)的区别

2020年9月16日 171点热度 0条评论 来源: xumenger

简单说明

int *f(),表示这个函数f,函数的返回值的类型是 int *。

int (*f)(),表示这是一个函数指针,它要指向一个函数才能有用,指向一个函数之后就可以用它来代替该函数,之后使用这个指针就相当于使用该函数。

通过程序去说明

#include<stdio.h>
int fun(int);
int main(void)
{
    int (*f1)(int);
    int (*f2)(int);

    f1 = fun;
    f2 = &fun;//注意上面的两种初始化函数指针的方法都是正确的,
              //所以在初始化函数指针的时候可以选择用&或者不用
    f1(2);
    f2(2);
    return 0;
}

int fun(int i)
{
    printf(“%d”, i);
    return 1;
}

 
    原文作者:xumenger
    原文地址: https://segmentfault.com/a/1190000003704524
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。