在C语言中,回调函数(callback)是一种函数指针,可以作为参数传递给其他函数,这样在调用该函数时,可以执行传递的回调函数。下面是一个简单的示例,展示了如何使用回调函数:
首先,定义一个回调函数的原型。这个原型应该与你想要传递的回调函数的签名相匹配。
typedef void (*callback_function)(int);
然后,在需要使用回调函数的地方,可以声明一个接受回调函数作为参数的函数。
void perform_operation(int data, callback_function callback) {
// 执行一些操作
// ...
// 调用回调函数
callback(data);
}
接下来,你可以定义一个具体的回调函数,以便在需要时进行调用。
void my_callback(int data) {
printf("回调函数被调用,数据为:%d\n", data);
}
最后,你可以使用上述定义的函数和回调函数来执行操作并调用回调函数。
int main() {
int data = 10;
perform_operation(data, my_callback);
return 0;
}
在上述示例中,perform_operation
函数接受一个整数参数和一个回调函数作为参数。在函数执行期间,它会调用传递的回调函数,将传递的整数参数作为回调函数的参数。在main
函数中,我们传递了一个名为my_callback
的回调函数作为参数,它会在perform_operation
函数内部被调用。
注意,回调函数的类型应与函数指针的类型匹配,以确保参数和返回值的一致性。