Was ist ein „Rückruf“ in C und wie werden sie implementiert?

Was ist ein „Rückruf“ in C und wie werden sie implementiert?
Der C -Programmierung Die Sprache enthält verschiedene Funktionen, mit denen Benutzer verschiedene Arten von Aktivitäten durch Code durchführen können. Einige Funktionen sind benutzerdefiniert, während andere integriert sind. Unter diesen Funktionen gibt es eine Funktion genannt Ruf zurück, Dies ist eine hochrangige Funktion, die den Benutzern dabei hilft, mehrere Programme mit komplexem Verhalten zu erstellen.

Befolgen Sie den Artikel, wenn Sie eine detaillierte Erklärung haben möchten, wie die Ruf zurück Funktion funktioniert.

Was ist eine Rückruffunktion

A Ruf zurück In C ist eine Funktion, die als Argument an eine andere, höhere Funktion übergeben wurde. Dies ermöglicht die höhere Funktion, die untere Ebene aufzurufen, Ruf zurück Funktion zum richtigen Zeitpunkt. Dies ist nützlich, um Programme mit komplexem Verhalten zu erstellen, da Sie das komplexe Verhalten in kleine, wiederverwendbare Stücke unterteilen können. Infolgedessen wird ein einfacherer Code erzeugt, der einfacher zu verstehen, zu warten und zu testen ist.

Bei der Entwicklung von Treibern oder benutzerdefinierten Bibliotheken, Ruf zurück Funktionen sind eine grundlegende und häufig entscheidende Vorstellung, die Entwickler verstehen müssen. A Ruf zurück Die Funktion bietet einen Verweis auf ausführbaren Code, der als Argument an einen anderen Code gesendet wird, sodass eine Softwareebene auf niedrigerer Ebene eine in einer höheren Ebene angegebene Funktion ausführen kann. Verwendung einer Ruf zurück, Ein Treiber- oder Bibliotheksentwickler kann ein Verhalten in einer niedrigeren Schicht definieren, während die Anwendungsschicht verlässt, um die Implementierung zu definieren.

Rückrufe werden üblicherweise in Programmiersprache und Bibliotheken verwendet, wie z. B. objektorientierte Programmierung, ereignisgesteuerte Programmierung und GUI-Programmierung. Sie werden auch im Design eingebetteter Systemprogrammierungen und sogar im API -Design (Application Programming Interface) verwendet.

A Ruf zurück Funktion ist nur ein Funktionszeiger, der als Parameter an eine andere Funktion auf der grundlegendsten Ebene gesendet wird. A Ruf zurück besteht in der Regel aus drei Teilen: Ruf zurück Ausführung, Ruf zurück Registrierung und die Ruf zurück Funktion.

Vorteile von Rückruffunktionen

Nutzung Rückrufe Hat den Hauptvorteil, dass Unterprogramme, die auf niedrigeren Softwareebenen geschrieben wurden. Sie können auch a verwenden Ruf zurück für Signale oder Warnungen.

So implementieren Sie eine Rückruffunktion?

In C können Sie implementieren Rückrufe Verwenden von Funktionszeigern. Um sich auf eine Funktion zu beziehen, die an anderer Stelle im Programm angegeben ist, werden Funktionszeiger verwendet. Wenn die höhere Funktion das aufrufen muss Ruf zurück Funktion, dies geschieht, indem der Funktionszeiger die Adresse der Adresse zurückreicht Ruf zurück Funktion. Anschließend wird diese Adresse als Argument für den Anruf verwendet.

#enthalten
void a ()

printf ("Dies ist ein Artikel über Callbacks \ n");

void Callback (void (*ptr) ())

(*ptr) ();

int main ()

void (*ptr) () = & a;
Rückruf (PTR);
Rückkehr 0;

In diesem Code erstellen wir zwei Funktionen. eine normale Funktion (a ()) und a Ruf zurück Funktion (callback ()). Und in der Funktion main () rufen wir die Funktion a () mit dem auf Ruf zurück() Funktion, die die Ausgabe druckt.

Ausgang

Abschließende Gedanken

Rückrufe In C sind wichtige Funktionen, mit denen Benutzer Programme mit komplexerem Verhalten erstellen können. Indem die Funktionen auf niedrigerer Ebene aufgerufen werden können, wenn dies erforderlich ist, Rückrufe ermöglichen es dem Programm, ein komplexes Verhalten in kleine, wiederverwendbare Stücke zu zerlegen. Dies erleichtert es einfacher, den Code zu pflegen und zu beheben. Mit der Verwendung von Funktionszeigern und Funktionsobjekten können Sie verwenden Ruf zurück dynamisches, staatlich abhängiges Verhalten für das Programm bereitzustellen.