Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ฟังก์ชันโทรกลับใน C


โดยพื้นฐานแล้วการเรียกกลับนั้นเป็นโค้ดที่สามารถเรียกใช้งานได้ซึ่งส่งผ่านเป็นอาร์กิวเมนต์ไปยังโค้ดอื่น ๆ ซึ่งคาดว่าจะโทรกลับหรือดำเนินการอาร์กิวเมนต์ในเวลาที่กำหนด เราสามารถกำหนดมันในคำอื่น ๆ เช่นนี้:หากการอ้างอิงของฟังก์ชันถูกส่งไปยังอาร์กิวเมนต์ของฟังก์ชันอื่นสำหรับการเรียก ฟังก์ชันจะเรียกว่าฟังก์ชันเรียกกลับ

ใน C เราต้องใช้ตัวชี้ฟังก์ชันเพื่อเรียกฟังก์ชันเรียกกลับ รหัสต่อไปนี้แสดงให้เห็นว่าฟังก์ชันการโทรกลับทำงานอย่างไร

โค้ดตัวอย่าง

#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)();    //calling the callback function
}
main() {
   void (*ptr)() = &my_function;
   my_callback_function(ptr);
}

ผลลัพธ์

This is callback function.
This is a normal function.