谁能告诉我在C中注册一些示例的回调函数的确切含义? 我在网上进行了很多搜索,但找不到满意的答案。 甚至在堆栈溢出中进行搜索,但都无法获得完美的想法。
什么是通知回调和异步回叫?
C中什么是"回调"的可能重复形式以及如何实现?
另请参阅stackoverflow.com/a/147241/20270
Wikipedia页面是不错的en.wikipedia.org/wiki/Callback_%28computer_programming%29
stackoverflow.com/questions/2152974/
注册回调函数只是意味着您正在安排一个外部实体来调用您的函数。
它可能会在以后发生,或者可能立即发生。一个简单的例子是qsort。声明如下:
void qsort(void *base, size_t nel, size_t width,
int (*compar)(const void *, const void *));
为了使用它,必须将指针传递给比较元素的函数-回调。
那是一个简单的示例,但是通常"注册回调"意味着将函数指针传递给将来会为您调用该函数的人。
注册回调意味着将函数指针传递给将通过该指针调用函数的函数指针
为了更容易理解,请考虑A和B,它们是代码中涉及的两个实体。
一个写了一个函数说myFunc
char myFunc(int a)
{
/* Code written by A*/
}
现在,当说到A将向B注册一个回调时,这意味着A将向B发送函数指针
通过向B发送函数指针,A提