Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Hàm callback trong C

Callback là mã thực thi được truyền làm đối số cho mã khác, dự kiến sẽ gọi lại đối số đó tại thời điểm cho trước. Nói cách khác: nếu tham chiếu hàm được truyền cho đối số hàm khác để gọi, đó là callback function.

Trong C dùng con trỏ hàm để gọi callback. Mã sau minh họa:

Ví dụ

#include <stdio.h>

void my_function() {
    printf("This is a normal function.");
}

void my_callback_function(void (*ptr)()) {
    printf("This is callback function.\n");
    (*ptr)(); // gọi callback function
}

int main() {
    void (*ptr)() = &my_function;
    my_callback_function(ptr);
    return 0;
}

Kết quả

This is callback function.
This is a normal function.