【发布时间】:2026-02-02 20:45:01
【问题描述】:
我想创建一个函数,对一组数据执行由参数传递的函数。如何在 C 中将函数作为参数传递?
【问题讨论】:
-
如果您使用函数/数组作为变量,请始终使用
typedef。 -
我们称之为Function pointer
-
@MooingDuck 我不同意你的建议,你的建议缺乏支持结论的理由。我个人更喜欢从不在函数指针上使用typedef,我认为它使代码更清晰易读。
-
@andrewrk:你更喜欢
void funcA(void(*funcB)(int))和void (*funcA())()而不是typedef void funcB(); void funcA(funcB)和funcB funcA()?我看不出有什么好处。 -
参见标准库函数
qsort和bsearch了解如何完成此操作的示例。
标签: c function pointers syntax parameters