首页 / 知识
如何在C中将函数作为参数传递?
2023-04-12 02:39:00

How do you pass a function as a parameter in C?我想创建一个函数,它对一组数据执行参数传递的函数。如何在C中传递函数作为参数? 宣言 采用函数参数的函数的原型如下所示:
这说明参数
函数调用 调用带有函数参数的函数时,传递的值必须是指向函数的指针。为此,请使用函数名(不带括号):
调用 功能体 与任何参数一样,func现在可以在函数体中使用参数的名称来访问参数的值。假设func将应用传递给数字0-4的函数。首先,考虑直接调用print的循环是什么样子的:
由于
摘自http://math.hws.edu/bridgeman/courses/331/f05/paddles/c-c++-notes.html 这个问题已经有了定义函数指针的答案,但是它们可能会变得非常混乱,特别是当您要在应用程序中传递它们时。为了避免这种不愉快,我建议您将函数指针类型化为更可读的类型。例如。
声明一个返回void且不接受参数的函数。要创建指向此类型的函数指针,现在可以执行以下操作:
对于返回int并接受char的函数
并使用它
有一些库可以帮助将函数指针转换为可读性好的类型。Boost函数库很棒,值得您付出努力!
比上面好多了。 由于C++ 11,您可以使用函数库以简洁和通用的方式来实现这一点。语法是,例如,
其中 我在下面提供了一个示例程序:
但是,有时使用模板函数更方便:
将函数的地址作为参数传递给另一个函数,如下所示
我们还可以使用函数指针传递函数作为参数
您需要传递一个函数指针。语法有点繁琐,但一旦熟悉它,它就非常强大。 它实际上不是一个函数,但它是一段本地化的代码。当然,它不会只传递结果。如果传递给事件调度器以便稍后运行(因为结果是现在计算的,而不是在事件发生时计算的),它将不起作用。但是,如果您只想将代码本地化到一个地方,那么它确实会将代码本地化到一个地方。
函数可以作为函数指针"传递",如6.7.6.3p8所示:"参数声明为"函数返回类型"应调整为"指向函数返回类型的指针",如6.3.2.1所示。"。例如:
相当于:
|
最新内容
相关内容
pythoneval函数作用
pythoneval函数作用,培训,字符串,函数,作用,表达式,对象,结果,引号,计算器,以上,pythoneval(str)函数很强大,官方解释为:将字符串str当成有效的pythonprint函数不要换行怎么写
pythonprint函数不要换行怎么写,培训,灵活,函数,对象,参数,文件,空格,结尾,字符,下面,从语法上讲,调用python3.0的print函数有如下的形式:printpython如何自定义一个函数
python如何自定义一个函数,代码,名称,培训,函数,圆括号,参数,定义,表达式,选择性,字符串,python函数是组织好的,可重复使用的,用来实现单一,或相python内置函数在哪
python内置函数在哪,培训,函数,包装,模块,对象,字符串,列表,数据类型,属性,类型,所谓内置函数,就是在Python中被自动加载的函数,任何时候都可以pythonhelp函数怎么退出
pythonhelp函数怎么退出,培训,函数,字母,效果,提示符,窗口,以上,模式,方式,更多,python的help用法及退出方式一、进入交互模式打开cmd命令行python函数返回值是什么
python函数返回值是什么,培训,代码,位置,简介,函数,语句,上面,结束,结果,变量,return语句位置与多条return语句1、python函数使用return语句pythonrange函数怎么用
pythonrange函数怎么用,步长,培训,函数,负数,整数,语法,字母,实例,以上,以下,pythonrange()函数可创建一个整数列表,一般用在for循环中。函数python怎么传参数
python怎么传参数,培训,地址,通信,函数,参变量,主调,参数,堆栈,变量,局部,首先还是应该科普下函数参数传递机制,传值和传引用是什么意思?函数python函数如何不返回none
python函数如何不返回none,培训,函数,语句,变量,赋值,参数,实际,结果,字符串,语法,python中,用def语句创建函数时,可以用return语句指定应该返python函数的高级使用方法
python函数的高级使用方法,代码,函数,灵活,数据,培训,时间,定义,程序,赋值,变量,Python的函数是“一等公民”,因此函数本身也是一个对象,函数既python函数的返回值是什么
python函数的返回值是什么,培训,简介,函数,语句,结果,类型,结束,定义,以上,作用,python的返回值简介函数需要先定义后调用,函数体中return语句pythonround函数怎么用
pythonround函数怎么用,数字,培训,位数,函数,小数点,小数位,以上,整数,左侧,语法,round函数是一个用于四舍五入的函数;在python3中,round(1.0/