Kom godt i gang: En nybegyndervejledning Sådan bruger du GDB

En af de mest frustrerende dele om kodning er, når du har en fejl, du bare ikke kan synes at finde eller rette.

Du kender følelsen. Du knuste et tilfælde af Red Bull, sat på nogle hovedtelefoner og arbejdede gennem natten og skrev hundredvis - om ikke tusindvis - af linjer til dit program. Når du tror, ​​du har fået det perfekt, udfører du og ... intet.

Selvfølgelig kan du manuelt gå tilbage gennem din kode linje for linje, på udkig efter en manglende variabel eller et symbol, der måske ikke er på plads. Men hvis dit program har tusindvis af linjer, kan det være meget tidskrævende og kedeligt. Du kan simpelthen springe over din fejl ved et uheld, og selvom du finder noget forkert, hvordan ved du det er det eneste problem i din kode?

Den bedste måde at løse disse fejl på er effektivt ved at køre en debugger.

Der er et par pålidelige debugging programmer derude, hver med deres egne fordele, der kan hjælpe dig med at finde dine fejl. Krydrede kodere vil sandsynligvis allerede have deres præferencer. Men hvis du er en nybegynder eller bare søger et nyt program for at prøve, anbefaler vi, at du lærer at bruge GDB.

Hvad er præcis GDB? Sådan bruger du GDB?

Vindue af computer kode

GDB er en gratis debugger, der tilbydes fra GNU Project. Fejlfindingen giver brugerne mulighed for at se, hvad der rent faktisk foregik inden for et program, da det kørte frem til det øjeblik, det styrtede. Sådan bruger du GDB? Brugere kan konfigurere GDB'en til at starte og stoppe og specifikke øjeblikke i programmet og vil modtage en anmeldelse af hvilken kodekode, der forårsagede programmet at gå ned.

GDB blev traditionelt brugt med programmer på Linux-operativsystemet, men det vil også fungere med de fleste populære Windows-varianter og endda macOS. Debuggeren kan også køres ved hjælp af ca. et dusin populære computersprog, herunder C og C ++.

Downloading GDB er ret ligetil. Den nyeste version af debuggeren kan fås på GNU Project FTP-serveren.

GNU-projektet tilbyder også ældre versioner af GDB, der går tilbage til 1988. Disse versioner er simpelthen for nostalgi, de vil sandsynligvis ikke arbejde på moderne computere og programmer.

Nyttige fejlfinding funktioner, du kan køre i GDB

Sådan bruger du GDB? GDB er en favorit blandt udviklere og kodere for sine enkle og alligevel detaljerede funktioner. Der er en håndfuld måder at bruge programmet til dine specifikke behov, og jo mere detaljeret du ønsker at få, desto mere komplicerede kan trinene være.

Mange universitets computervidenskabelige afdelinger har guider om, hvordan man udfører disse vanskeligere kommandoer, vi skal holde det enkelt.

Brug vejledning fra nogle af disse tutorials, vi har sammensat en nybegynder guide med nogle af de mest grundlæggende kommandoer, du kan bruge, når du lærer at bruge GDB.

1. Opsætning af GDB

Det første du skal gøre, er at angive hvilket program du gerne vil debugere.

Sådan bruger du GDB? For at fortælle GDB, hvilke filer du vil teste, skal du blot indtaste en "-g" med din GCC lige før det programnavn, du gerne vil debugere. For eksempel, hvis dit program hedder hopscotch, så vises din prompt i den del af din GCC som "-g hopscotch".

2. Kørende programmer i GDB

Når du har angivet hvilket program der skal debugger, er det en simpel kommando at starte GDB. Forudsat at vores program hedder hopscotch som i scenariet ovenfor, skal du indtaste "gdb hopscotch".

På dette tidspunkt skal du modtage en besked, der giver ophavsret og licensoplysninger og nogle grundlæggende regler for GDB - som dybest set siger, at programmet er gratis, og du er i stand til at foretage de ændringer, du ser passende. I slutningen af ​​meddelelsen ses en prompt, der siger "(gdb)." For at køre programmet skal du blot skrive "Kør" efter denne prompt og trykke Enter.

Hvis dit program er rent, vil det køre som det normalt ville. Men hvis du har fejl, får du en besked, der fortæller dig præcis, hvilken linje og parametre, der forårsagede dit program at gå ned.

3. Sådan bruger du GDB ved at bruge Breakpoints i GDB

Der kan være nogle tilfælde, hvor det er fordelagtigt at fejle hele dit program, men chancerne er, at du har testet din kode, som du har udviklet, så du ikke behøver debuggeren til at tjekke de linjer, du ved, fungerer korrekt.

Sådan bruger du GDB? Du kan indsætte breakpoints i dit GDB-program, som blot fortæller debuggeren at stoppe ved en bestemt linje. Hvis GDB finder en fejl inden dette punkt, får du en fejlmeddelelse med placeringen og parametrene. Men hvis debuggeren gør det til din angivne linje uden at støde på en fejl, får du en anden gdb-prompt.

For at køre GDB med et breakpoint, skal du blot indsætte den linje, hvor du vil have, at programmet skal standse efter programmets navn. Hvis du f.eks. Vil have GDB til at stoppe efter kode 10th, vil du indtaste følgende efter (gdb) prompt: "break hopscotch: 10." Du kan indsætte så mange breakpoints som du vil, men når du giver GDB Kør kommandoen den stopper ved dit første pause, medmindre det finder en fejl før den linje.

Derudover kan du også oprette et breakpoint for en bestemt funktion. Dette er nyttigt, hvis du ikke ved præcis, i hvilken linje denne funktion vises. Et eksempel ville være for "funktionsfejl", som ville blive beskrevet i din kode et eller andet sted. Indtast simpelthen "break-funktion" efter (gdb) -prompten, og debuggeren stopper, når den når funktionsfejl.

Hvis du nogensinde har brug for at fjerne et breakpoint, kan du bare skrive slette og breakpoint nummeret (dit første break point er nummer 1, det andet er nummer 2 osv.) I (gdb) prompt.

4. Fortsæt og trinkommandoer i GDB

Hvis GDB når dit breakpoint uden en fejl, vil den stoppe debuggeren. Du skal give flere kommandoer her for at genoptage.

Du har et par muligheder for at bruge GDB, men disse er de mest almindelige:

  • Blive ved: Dette vil bede debuggeren om at flytte til dit næste pausepunkt, hvis en anden blev etableret. Hvis ikke, vil det fortsætte med at løbe indtil programmets afslutning. Hvis GDB finder en anden fejl, stopper den og angiver placeringen af ​​problemet.
  • Trin: Dette vil bede debuggeren om at flytte til den næste linje i din programkode. Det vil derefter pause, indtil du giver en anden kommando. Denne funktion er nyttig, hvis du vil tjekke et bestemt område linje for linje, men kan blive kedeligt, hvis det bruges til en stor del af dit program.

5. Vagter i GDB

Mens breakpoints er nyttige, når du vil pause et bestemt program på et bestemt sted, hjælper overvågningspunkter med at holde styr på variabler og forholdsændringer. Hvis du for eksempel har en variabel, som du altid vil være NULL, vil et kigspunkt få debuggeren til at stoppe, hvis denne variabel nogensinde er tildelt en anden værdi end NULL.

Denne funktionalitet er nyttig, så du ikke behøver at stoppe debuggeren hver gang en bestemt funktion eller tilstand kommer op, men kun når GDB registrerer en ændring.

Kommandoen til at oprette et kigspunkt svarer meget til den, der bruges til at etablere et breakpoint. Efter (gdb) -prompten vil du indtaste "watch" og den variabel, du vil overvåge. Din kommando ville se sådan ud: (gdb) se myvariable.

6. Hjælp kommando i GDB

Hvis disse kommandoer ikke udfører den funktion, som du håber at køre med GDB, har debuggeren en rå hjælpemenu.

Sådan bruger du GDB ved at skrive "hjælp" efter (gdb) -prompten, og du vil modtage en liste med ca. et dusin klasser af kommandoer. Nogle af disse klasser omfatter:

  • aliasser
  • HireAHelper brugerdefineret
  • breakpoints
  • HireAHelper uklart
  • interne
  • HireAHelper Support

Herfra kan du skrive "hjælp" efterfulgt af et klassenavn, og du vil modtage en mere detaljeret liste over kommandoer.

Hvis du skriver "hjælp" efterfulgt af et kommandonavn, får du et komplet resumé af, hvad den kommando vil gøre.

Endelig, hvis du skriver "hjælp alle", får du en komplet liste over kommandoer, der er tilgængelige.

7. Afslutte GDB

Når du er færdig med at køre din fejlfindingstest, skal du ikke glemme at afslutte GDB. Dette gøres ved simpelthen at skrive "q" efter (gdb) prompt og trykke ind.

Start med at bruge GDB til at debugere dine programmer

computerskærm med kode skrevet i hvid på sorte skærme

Husk, dette er bare et grundlæggende overblik over, hvordan du bruger GDB. Ved at eksperimentere med forskellige kommandoer kan du teste en række variabler og foretage ændringer i din kode for at se, hvordan det påvirker dit program. Overvej hjælpfunktionen for at lære yderligere kommandoer, du kan bruge i dine test.

Alt hvad der skal gøres nu, er at spille med debuggeren for at se, hvor godt det opdager fejl i dit program - eller hvor godt du kunne kode dit program.

Invester i nogle skærm fast ejendom med en ny storskærm, baggrundsbelyst skærm fås i fem forskellige størrelser og prispoint.

Kilde

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.