什么是回调函数,写一个并说明
时间: 2023-03-28 09:02:50 浏览: 154
回调函数是指在某个事件发生时由系统自动调用的函数,通常作为参数传递给另一个函数,以便在需要时被调用。回调函数可以是预定义的函数,也可以是用户自定义的函数。在C语言中,回调函数通常用函数指针来实现。
下面是一个简单的回调函数示例:
```c
#include <stdio.h>
void callback(int num)
{
printf("callback function called with argument %d\n", num);
}
void do_something(int num, void (*cb)(int))
{
printf("doing something with argument %d\n", num);
cb(num);
}
int main()
{
do_something(42, callback);
return ;
}
```
在上面的示例中,`do_something`函数接受一个整数参数和一个函数指针参数,它会先打印出传入的整数参数,然后调用传入的函数指针参数,并将整数参数作为参数传递给回调函数。在`main`函数中,我们调用`do_something`函数,并传入一个整数参数和一个回调函数`callback`。运行程序后,输出结果如下:
```
doing something with argument 42
callback function called with argument 42
```
可以看到,`do_something`函数先打印出了传入的整数参数42,然后调用了回调函数`callback`,并将整数参数42作为参数传递给回调函数。回调函数`callback`被调用后,打印出了传入的整数参数42。
阅读全文