C/C++ 编程开发 函数指针与指针函数 的区别

文档声明:
以下资料均属于本人在学习过程中产出的学习笔记,如果错误或者遗漏之处,请多多指正。并且该文档在后期会随着学习的深入不断补充完善。感谢各位的参考查看。


笔记资料仅供学习交流使用,转载请标明出处,谢谢配合。
如果存在相关知识点的遗漏,可以在评论区留言,看到后将在第一时间更新。
作者:Aliven888

函数指针

  函数指针强调的是指针;它表示的是一个指向函数的指针。我们可以通过操作这个指针来实现对函数的操作。

格式:int (*pf)(int a, int b);

演示实例:

void (*pf)(int a, int b);   //声明一个函数指针
void Fun(int a, int b)    //定义一个函数,参数类型需和函数指针保持一致
{
    //打印函数参数
    cout << "a = " << a << "    b = "<< b << endl;
}


int _tmain(int argc, _TCHAR* argv[])
{
    //函数指针指向函数
    pf  = &Fun;   //也可以写成 pf = Fun
				  //函数名代表的其实也是函数的地址


    //通过操作函数指针来实现操作函数的目的
    pf(1,3);     //也可写成 (*pf)(1,3)
                 //函数名代表的其实也是函数的地址

    system("pause");
    return 0;
}

在这里插入图片描述

指针函数

  指针函数强调的是函数;它表示的是一个函数,而函数的返回值是一个指针。

格式:int *pf(int a, int b);

演示实例:

//定义一个指针函数
int *Fun(int a, int b)    
{
    int c = a + b;
    return &c;  //函数返回的是一个地址
}

int _tmain(int argc, _TCHAR* argv[])
{
    int d = *Fun(1,3);   //通过指针的形式取地址中的数值
    cout << "d = " << d << endl;
    system("pause");
    return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值