Følg artikkelen hvis du vil ha en detaljert forklaring på hvordan Ring tilbake funksjon fungerer.
Hva er en tilbakeringingsfunksjon
EN Ring tilbake I C er en funksjon som er gitt som et argument til en annen funksjon på høyere nivå. Dette gjør at funksjonen på høyere nivå kan kalle lavere nivå, Ring tilbake funksjon på riktig tidspunkt. Dette er nyttig for å lage programmer med kompleks oppførsel, da det lar deg dele den komplekse oppførselen ned i små, gjenbrukbare stykker. Som et resultat produseres det enklere kode som er enklere å forstå, vedlikeholde og teste.
Når du utvikler sjåfører eller tilpassede biblioteker, Ring tilbake Funksjoner er en grunnleggende og ofte avgjørende forestilling som utviklere må forstå. EN Ring tilbake Funksjon gir en referanse til kjørbar kode som sendes som et argument til annen kode, slik at et programvarelag på lavere nivå kan utføre en funksjon spesifisert i et høyere nivå. Bruker en Ring tilbake, En driver eller bibliotekutvikler kan definere en oppførsel i et lavere lag mens du forlater applikasjonslaget for å definere implementeringen.
Tilbakeringinger brukes ofte i programmeringsspråklige design og biblioteker, for eksempel objektorientert programmering, hendelsesdrevet programmering og GUI-programmering. De brukes også i innebygde systemprogrammering og til og med applikasjonsprogrammeringsgrensesnitt (API) design.
EN Ring tilbake Funksjon er bare en funksjonspeker som sendes som en parameter til en annen funksjon på det mest grunnleggende nivået. EN Ring tilbake består vanligvis av tre deler: Ring tilbake henrettelse, Ring tilbake registrering, og Ring tilbake funksjon.
Fordeler med tilbakeringingsfunksjoner
Bruke tilbakeringinger har den primære fordelen med å tillate subroutines skrevet på lavere programvarenivå for å ringe funksjoner som er opprettet på høyere programvarenivå. Du kan også bruke en Ring tilbake for signaler eller varsler.
Hvordan implementere en tilbakeringingsfunksjon?
I C kan du implementere tilbakeringinger Bruke funksjonspekere. For å referere til en funksjon som er spesifisert andre steder i programmet, brukes funksjonspekere. Når funksjonen på høyere nivå trenger å ringe Ring tilbake funksjon, det gjør det ved å henvise funksjonspekeren for å få tilbake adressen til Ring tilbake funksjon. Den bruker deretter denne adressen som argument for samtalen.
#inkludere
ugyldig a ()
printf ("Dette er en artikkel om tilbakeringinger \ n");
ugyldig tilbakeringing (void (*ptr) ())
(*ptr) ();
int main ()
void (*ptr) () = & a;
Tilbakeringing (PTR);
return 0;
I denne koden lager vi to funksjoner; en normal funksjon (a ()) og a Ring tilbake funksjon (tilbakeringing ()). Og i hovedfunksjonen () kaller vi funksjonen a () ved hjelp av Ring tilbake() Funksjon som skriver ut utgangen.
Produksjon
Siste tanker
Tilbakeringinger I C er viktige funksjoner som hjelper brukere med å lage programmer med mer kompleks oppførsel. Ved å la funksjonene på lavere nivå bli kalt når det er nødvendig, tilbakeringinger Gjør programmet til å dele opp kompleks oppførsel i små, gjenbrukbare brikker. Dette gjør det enklere å vedlikeholde og feilsøke koden. Med bruk av funksjonspekere og funksjonsobjekter kan du bruke Ring tilbake For å gi dynamisk, statsavhengig oppførsel for programmet.