C Programmering

Hur man använder ATEXIT-funktionen på språk C.

Hur man använder ATEXIT-funktionen på språk C.
Om du utför en process i ditt Linux-operativsystem och allt du vill ha en normal processavslutning måste du använda atexit-funktionen i din kod. Atexit-funktionen låter dig registrera en funktion som används för att anropas vid normal processavslutning innan koden körs. Det är en C-biblioteksfunktion. Om denna funktion anropas flera gånger anger varje samtal en annan atexit-funktion. De implementeras alla i motsatt ordning som en stack (i.e., den senast angivna funktionen är den första som utförs vid utgången). Vi kommer att diskutera metoderna för att göra allt detta med dig i den här artikeln.

Obs! Vi använder ubuntu 20.04 för att utföra den specifika processen och dess atexit-funktion.

Funktion av atexit-funktionen:

Denna atexistfunktion registrerar en funktion som du vill kalla den i huvudprocessen. Det orsakar normal programavslutning. Efter körning, om den returnerar 0, betyder det att funktionssamtalet lyckas. Om den returnerar -1 eller något annat värde misslyckades atexit-funktionen att anropa den registrerade funktionen om någon öppen källkodsfil öppnas. Däremot kommer avslutningen, atexit-funktionen att stänga alla dessa filer vid tidpunkten för körningen.

Steg 1: Skapa en textredigerare för att skriva ett program:

Innan du utför en atexit-funktion måste du först skapa ett C-språkprogram i din Linux-serverns textredigerare med följande kommando på din Linux-terminal.

$ gedit

Verktyget "gedit" tar lite tid att öppna, varefter du kan använda det omedelbart. Det gör det möjligt att öppna en textredigerare där du kan skriva din kod. Textredigeraren kommer att se ut som bilden nedan:

Steg # 2: Koda ett C-program med hjälp av atexit-funktion i textredigeraren:

För att använda atexit-funktionen måste du först skriva en enkel C-språkkod för att tillämpa funktionen i den. Det finns en C-språkkod i bilden nedan, där det finns två funktioner en är i huvudklassen, och en annan är registrerad i atexistfunktionsanropet.

Spara denna bildkod ovan med valfritt namn med hjälp av tilläggskod.c. Detta format visar att det är en C-språkkod, och det låter dig visa funktionerna och biblioteket för C-språket nedan är exemplet.

Steg 3: Utför processen för att kontrollera programmets resultat:

För att köra koden måste du först gå tillbaka till terminalen på Linux-servern. För körning måste du ge kommandot "gcc -o test" och namnet på den skapade C-filen. Här är kommandot nedan:

$ gcc -o testkod.c

Detta visar ett fel om gcc-kompilatorn inte är installerad i ditt system.

Nu måste du installera gcc genom att ge kommandot "sudo apt install gcc" på din Linux-terminal som visas nedan:

Genom att trycka på Enter-tangenten kommer den att börja installera gcc på din Linux-server. Det kommer att ta lite tid; efter det kommer det att be dig att ange ja / nej, vid den tiden. Du måste ange ja; då kommer det att visa framstegen för nedladdning av gcc-kompilator som visas i bilden nedan:

Så snart du har installerat gcc-kompilatorn på din Linux-server kan du framgångsrikt kompilera din kod i den. För att få slutprodukten måste du använda. / testkommando enligt nedan:

Detta kommando visar utdata från din kod. Du kan se utmatningen av din kod i bilden nedan.

Som visas ovan är "Existing Successfully" den skapade funktionen registrerad och kallad av atexit-funktionen i programmets huvudkod. Denna utgång visar att funktionen har registrerats framgångsrikt. Om den inte är registrerad kommer utmatningen att vara -1.

Ett annat exempel på atexit-funktion med flera registrerade funktioner som ska anropas:

För att veta tydligare hur den här funktionen fungerar kan du ha ett annat exempel med annan kodkörning. Upprepa samma process för att skriva en kod som nämnts ovan med kommandot "gedit" för att öppna textredigeraren och efter att du har skrivit din kod, spara den med valfritt namn genom att nämna .c förlängning. Som visas i bilden nedan kan du se att flera funktioner anropas av atexit-funktion i samma program.

I bilden ovan kan du se att tre tomma funktioner anropas och registreras med hjälp av atexit-funktionen i huvudkoden. För att få utdata från den här koden måste du utföra samma kommando som tidigare nämnts. Öppna terminalen på din Linux-server och kör kommandot "gcc -o test" tillsammans med filen som skapades tidigare. Efter framgångsrik sammanställning av koden måste du utföra följande citerade instruktioner i terminalen.

$ ./testa

Här kan du se alla de tre kallade funktionerna är registrerade och fungerar framgångsrikt.

Några specifika användningar av "atexit" -funktionen:

Ovan har vi sett en mycket omfattande Linux-server som använder atexit-funktionen för att normalisera den exekverade koden och har önskat atexit-status. När flera funktioner registreras innan kodens avslutning måste du använda flera atexit-funktioner för att anropa varje registrerad funktion.

Slutsats:

Artikeln, som nämnts tidigare, visar användningen av atexit-funktionen på C-språket. Vi har använt gcc-kompilatorn för att kompilera exempelkoden relaterad till atexit-funktionen i Linux-servern. I artikeln ovan finns det flera exempel för att förstå användningen av atexit-funktionen och hur den fungerar i Linux. Nu är allt du behöver göra att dra nytta av den här artikeln för att använda atexit-funktionen i din Linux-server.

Portar med öppen källkod för kommersiella spelmotorer
Gratis, öppen källkod och plattformsmekaniska rekreationer kan användas för att spela gamla såväl som några av de ganska senaste speltitlarna. I den h...
Bästa kommandoradsspel för Linux
Kommandoraden är inte bara din största allierade när du använder Linux, det kan också vara källan till underhållning eftersom du kan använda den för a...
Bästa Gamepad Mapping Apps för Linux
Om du gillar att spela spel på Linux med en gamepad istället för ett typiskt tangentbord och musinmatningssystem, finns det några användbara appar för...