没有合适的资源?快使用搜索试试~ 我知道了~
一、函数指针的定义 顾名思义,函数指针就是函数的指针。它是一个指针,指向一个函数。看例子: A) char * (*fun1)(char * p1,char * p2); B) char * *fun2(char * p1,char * p2); C) char * fun3(char * p1,char * p2); 看看上面三个表达式分别是什么意思? C):这很容易,fun3 是函数名,p1,p2 是参数,其类型为char *型,函数的返回值为char *类型。 B):也很简单,与C)表达式相比,唯一不同的就是函数的返回值类型为char**,是个二级指针。 A):fun1 是函数名吗?回忆一下前面讲解数组指针时的情形。我们说数组指针这么定义或许更清晰: int (*)[10] p;
资源推荐
资源详情
资源评论













格式:doc 资源大小:68.0KB 页数:10

















C 语言函数指针
一、函数指针的定义
顾名思义,函数指针就是函数的指针。它是一个指针,指向一个函数。看例子:
A)
char * (*fun1)(char * p1,char * p2);
B)
char * *fun2(char * p1,char * p2);
C)
char * fun3(char * p1,char * p2);
看看上面三个表达式分别是什么意思?
C):这很容易,fun3 是函数名,p1,p2 是参数,其类型为 char *型,函数
的返回值为 char *类型。
B):也很简单,与 C)表达式相比,唯一不同的就是函数的返回值类型为
char**,是个二级指针。
A):fun1 是函数名吗?回忆一下前面讲解数组指针时的情形。我们说数组指
针这么定义或许更清晰:
int (*)[10] p;
再看看 A)表达式与这里何其相似!明白了吧。这里 fun1 不是什么函数名,
而是一个指针变量,它指向一个函数。这个函数有两个指针类型的参数,函数
的返回值也是一个指针。同样,我们把这个表达式改写一下:char * (*)(char
* p1,char * p2) fun1; 这样子是不是好看一些呢?只可惜编译器不这么想。^
_^。
二、函数指针的使用
1、函数指针使用的例子
上面我们定义了一个函数指针,但如何来使用它呢?先看如下例子:
#include <stdio.h>
#include <string.h>
char * fun(char * p1,char * p2)
{
int i = 0;
i = strcmp(p1,p2);
if (0 == i)
{
return p1;
}
else
资源评论


qq_17303311
- 粉丝: 0
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
