C/C++编程笔记:C语言函数指针的理解与使用,就是这么简单明了!

本文详细介绍了C/C++中的函数指针,从定义、使用到高级应用,包括函数指针的定义,如何使用函数指针调用函数,以及函数指针数组和函数指针数组的指针的概念,帮助读者掌握这一核心编程概念。
摘要由CSDN通过智能技术生成

1.函数指针的定义

顾名思义,函数指针就是函数的指针。它是一个指针,指向一个函数。看例子:

看看上面三个表达式分别是什么意思?

C)这很容易,fun3是函数名,p1,p2是参数,其类型为char *型,函数的返回值为char *类型。

B) 也很简单,与C)表达式相比,唯一不同的就是函数的返回值类型为char**,是个二级指针。

A) fun1是函数名吗?回忆一下前面讲解数组指针时的情形。我们说数组指针这么定义或许更清晰:

int(*)[10] p;

再看看A)表达式与这里何其相似!明白了吧。这里fun1不是什么函数名,而是一个指针变量,它指向一个函数。这个函数有两个指针类型的参数,函数的返回值也是一个指针。同样,我们把这个表达式改写一下:

char* (*)(char* p1,char* p2) fun1;

这样子是不是好看一些呢?只可惜编译器不这么想。^_^。

2.函数指针使用的例子

上面我们定义了一个函数指针,但如何来使用它呢?先看如下例子:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值