কলব্যাক (Callback) মূলত কোনো এক্সিকিউটেবল কোড যা অন্য কোডের আর্গুমেন্ট হিসেবে পাস করা হয়, যেটি এক্সপেক্ট করা হয় যে নির্দিষ্ট সময়ে কল ব্যাক বা আর্গুমেন্টটি এক্সিকিউট করবে। অন্য শব্দে: যদি একটি ফাংশনের রেফারেন্স অন্য ফাংশনের আর্গুমেন্ট হিসেবে পাস করা হয় কল করার জন্য, তবে তাকে কলব্যাক ফাংশন বলা হয়।
সি-তে কলব্যাক ফাংশন কল করতে ফাংশন পয়েন্টার ব্যবহার করতে হয়। নিচের কোড কলব্যাক ফাংশন কীভাবে কাজ করে তা দেখাচ্ছে।
উদাহরণ কোড
#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)(); // কলব্যাক ফাংশন কল
}
int main() {
void (*ptr)() = &my_function;
my_callback_function(ptr);
}
আউটপুট
This is callback function. This is a normal function.