函数指针及含参函数指针做参数的实现

转载 2016年06月01日 19:00:54
  1. 函数指针是指向函数的指针变量。c在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针指向的地址处。有了指向函数的指针变量后。可以通过该指针变量调用函数,函数指针有两个用途:调用函数、做函数的参数:

    1. 调用函数,如下所示:

               

               输出结果如下:

                  

由以上可以说明成功调用。


b.无参函数指针做参数的实现,如下(标准写法)所示:



输出结果如下:

                       


还有以下写法也能成功,因为c语言标准规定可以这样用:

                      

也能成功输出


c.带参有返回值的函数指针做参数的



输出结果如下:

                     


而不能写成如下所示:

                    

也可写成以下形式,其中涉及到函数指针类型的转换:


2.函数指针数组的实用之处:当我们需要判断大量条件的时候,并且在每一个条件都有相应的处理函数,这时实用switch...case..的代码量会很大,并且效率会比较低,这个时候就可以使用函数指针数组来解决这个问题了,可以使用每个条件为数组下表:如下所示:

结果如下

函数指针作为某个函数的参数及定义函数指针(回调函数)

转载于:http://blog.csdn.net/vlily/article/details/7244682 一、 定义某一函数的指针类型: 就像自定义数据类型一样,我们也可以先定义一个函数指针类...
  • dagefeijiqumeiguo
  • dagefeijiqumeiguo
  • 2017年06月17日 22:52
  • 472

C++传递对象函数指针作为参数

#include "stdafx.h" #include #include using namespace std; int fun1(char arg1) { cout
  • rekrad
  • rekrad
  • 2014年01月24日 14:02
  • 2329

C++函数传参、函数指针的定义以及调用

C++函数传参、函数指针的定义以及调用
  • u012526003
  • u012526003
  • 2016年11月01日 00:12
  • 190

函数指针做函数参数的意义

int Oper(int (*MyPointerFuncAdd)(int a,int b)){int c=MyPointerFuncAdd(5,6);//间接调用} 实现了函数调用和任务的编...
  • y780465649
  • y780465649
  • 2016年08月08日 21:10
  • 1964

函数指针模板参数

同样,函数指针型模板参数的意义在于:在变与不变之间取得最优实现。通常函数指针的作用是实现回调(callback),即由调用方将所需要操作包装成某个函数f0,并将指向此函数的指针&f0作为参数传递给函数...
  • microsoftwin32
  • microsoftwin32
  • 2014年07月05日 16:21
  • 1787

函数指针作为参数&回调函数

在c/c++中,允许把函数当做指针作为cansh
  • bdss58
  • bdss58
  • 2014年10月25日 16:36
  • 1178

函数指针作参数&运算符重载

// functionpointerparameterandoperator.cpp : Defines the entry point for the console application. //...
  • g1ider
  • g1ider
  • 2016年04月25日 23:02
  • 120

函数指针做为参数的例子

#include using namespace std; void f1(){std::cout void f2(){std::cout void f3(){std::cout typ...
  • daa20
  • daa20
  • 2015年09月21日 21:54
  • 564

C/C++:使用函数指针作为参数,完成不同的任务

1、通过typdef关键字指定函数指针
  • jiezhj
  • jiezhj
  • 2014年08月04日 14:51
  • 1206

带有模板参数的函数指针

如果能定义一个带有模板参数的函数指针,例如:template void (*pf)(T);它就可以指向任何一个带有一个任何类型参数的函数了。但这种语法不被编译器支持。可以把这种类型的指针作为一个普通...
  • jcwKyl
  • jcwKyl
  • 2009年01月14日 17:35
  • 4122
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:函数指针及含参函数指针做参数的实现
举报原因:
原因补充:

(最多只允许输入30个字)