了解指针(5)-- 指针和函数
2015-04-26 22:23
155 查看
就像数组名是指向数组的第一个元素的常指针一样,函数名也是指向函数的常指针。可以声明一个指向函数的指针变量,并且用这个指针调用其他函数(只要这个函数和你的函数指针在签名、返回、参数值方面一致即可)。
例1:
long (* fun) (int)
上面就是一个函数指针,该指针返回值类型是long,所带的参数类型是int。
例2:
int fun(char *,int);
int (*pfun)(char *,int);
pfun=fun;
int a=(*pfun)("abcdefg",7); //通过函数指针调用函数。
注意:函数指针和指针函数的区别
1、函数指针是指向函数的指针;
如例1:long (* fun) (int), fun就是一个函数指针,该指针返回值类型是long,所带的参数类型是int。
2、指针函数是一个返回指针类型的函数;
例1去掉括号:long * fun (int), fun就是指针函数,这是一个带有整数参量并返回一个长整形变量的指针的函数。
例3:
int (* (*f)(int, int))(int)
f 是一个函数指针,指向的函数的类型是有两个int参数并且返回一个函数指针的函数,返回的函数指针指向一个int参数且返回int的函数。
例1:
long (* fun) (int)
上面就是一个函数指针,该指针返回值类型是long,所带的参数类型是int。
例2:
int fun(char *,int);
int (*pfun)(char *,int);
pfun=fun;
int a=(*pfun)("abcdefg",7); //通过函数指针调用函数。
注意:函数指针和指针函数的区别
1、函数指针是指向函数的指针;
如例1:long (* fun) (int), fun就是一个函数指针,该指针返回值类型是long,所带的参数类型是int。
2、指针函数是一个返回指针类型的函数;
例1去掉括号:long * fun (int), fun就是指针函数,这是一个带有整数参量并返回一个长整形变量的指针的函数。
例3:
int (* (*f)(int, int))(int)
f 是一个函数指针,指向的函数的类型是有两个int参数并且返回一个函数指针的函数,返回的函数指针指向一个int参数且返回int的函数。
相关文章推荐
- 彻底了解指针数组,数组指针,指针的指针以及函数指针
- [C语言]函数和指针居然也有一腿??让我们一起来了解回调函数
- 函数名与函数指针(了解)
- Z :彻底了解指针数组,数组指针以及函数指针 [复
- 初学C语言----指针深入了解 :指针与函数
- 彻底了解指针数组,数组指针,以及函数指针 .
- C++ 深入了解 函数, 虚函数, 单继承,多继承,指针,引用。
- 彻底了解指针数组,数组指针以及函数指针
- 彻底了解指针数组,数组指针,以及函数指针
- 浅谈指针数组、数组指针及函数指针
- C语言(Head First C)-8:高级函数:函数指针 qsort() 可变参数函数
- C-函数指针
- c++ 父类指针如何操作子类的新函数
- [C++基础]那些容易被混淆的概念:函数/数组指针-指针函数/数组,类/函数模板-模板类/函数
- 理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
- C和指针之动态内存分配之(编写calloc函数,函数内部使用malloc函数来获取内存)
- 指向函数的指针
- 程序员面试宝典-第九章-9.3-面试例题1-函数指针
- 函数指针作为某个函数的参数及定义函数指针
- typedef 函数指针的用法