Fungsi Panggilan Balik di C

Panggilan balik dalam bahasa pemrograman C adalah fungsi yang digerakkan oleh peristiwa yang meneruskan fungsi ke fungsi lain sebagai argumen. Sederhananya, fungsi panggilan balik adalah ketika referensi “fungsi 1” diteruskan sebagai argumen ke “fungsi 2” menggunakan penunjuk fungsi. Fungsi itu menggunakan referensi itu untuk memanggil “fungsi 1”. Artikel ini akan memberikan beberapa ilustrasi tentang useran fungsi callback dalam bahasa pemrograman C

Sintaksis

Untuk menggunakan fungsi callback, kita harus mendeklarasikan dan menginisialisasi pointer fungsi di fungsi utama. Sintaks deklarasi/inisialisasi pointer fungsi didefinisikan di sini:

[Returntype-of-the-callingfunction] (*[Pointer-name])([Callingfunction’s-parameters])=& [Callingfunction-name];

Setelah deklarasi/inisialisasi pointer fungsi, kami akan meneruskan pointer ke fungsi yang diinginkan dengan cara berikut:

[Desired-Function-name]([Any-other-function-parameter], Pointer-name);

Definisi fungsi/tanda tangan inisialisasi dari fungsi yang menerima argumen itu akan seperti ini:

[Returntype] [Function-name]([Any-other-function-parameter], [Returntype-of-calling-function] (*[pointer-name]) ([Calling-function’s-parameters])

Akhirnya, memanggil fungsi itu menggunakan pointer yang diteruskan ditampilkan di sini:

[Pointer-name] (that-function's-parameters);

Teorinya mungkin agak membingungkan. Namun, penerapan contoh akan membantu Anda menghilangkan kebingungan tersebut.

Contoh 1:

Dalam contoh pertama kami, kami akan membuat fungsi panggilan balik sederhana. Itu tidak menghasilkan apa-apa dan tidak membutuhkan parameter. Untuk menghapus konsep yang baru kita pelajari dengan menerapkannya. Yang perlu Anda lakukan adalah membuat notepad dan memberinya judul pilihan Anda. Tambahkan ekstensi.cpp yang digunakan untuk file pemrograman C.

Setelah dokumen dibuat, buka interface command line dan ketik kueri yang ditambahkan berikut untuk mengompilasi kode bahasa C Anda menggunakan kompiler GCC.

$ gcc -o [your filename] [your filename].cpp

Sekarang, ketik perintah berikutnya untuk eksekusi kode.

$ [Your filename].exe

Mari kita lompat ke kode utama. Kami telah mulai dengan membuat tanda tangan fungsi di bagian atas, karena kami perlu membuat dua fungsi. Satu akan menjadi panggilan balik dan yang lainnya yang penunjuk fungsinya diteruskan ke fungsi panggilan balik.

Pada fungsi utama, kita akan mendeklarasikan/menginisialisasi pointer fungsi kita. Saat pemanggilan fungsi, kita harus melewatkan pointer sebagai argumen. Kode fungsi utama disajikan pada tangkapan layar di bawahnya.

Sekarang, yang perlu kita lakukan adalah mengisi callback kita dan fungsi lainnya. Identik dengan cara pada gambar yang disajikan di bawah ini. Panggilan balik dan kode fungsi lainnya disajikan pada tangkapan layar di bawahnya.

Fungsi kami tidak melakukan sesuatu yang kompleks. Untuk mendapatkan ide dasar, kami akan mencetak pesan di konsol. Untuk melihat bagaimana fungsi panggilan balik bekerja. Jalankan instruksi yang disajikan pada gambar di bawah.

Dilihat dari outputnya, kita dapat mengetahui kapan kita melakukan pemanggilan fungsi dari main. Itu pergi ke “fungsi 1” dan mencetak pesan di konsol. Kemudian dengan menggunakan penunjuk fungsi, “fungsi 2” diakses ketika baris kode di “fungsi 2” semuanya dieksekusi. Kontrol akan kembali ke “fungsi 1”.

Related Posts