Cppcheck-opdracht in Linux

Cppcheck Opdracht In Linux



“Voor het uitvoeren van een broncodebestand is een compiler vereist in het Linux-besturingssysteem. Om een ​​codebestand te onderzoeken, hebben we enkele geautomatiseerde tools en commando's nodig. Het Linux-besturingssysteem is een open-source en gratis besturingssysteem dat verschillende opdrachten biedt om een ​​bepaalde actie of werk uit te voeren. Om een ​​broncodebestand te onderzoeken om bugs en fouten te vinden die een compiler mogelijk niet kan detecteren, biedt Linux een nuttig commando dat bekend staat als cppcheck. In deze handleiding zullen we leren wat een cpp-commando is in Linux en hoe het wordt gebruikt om fouten en bugs in een C- of C++-bestand in Linux te detecteren.”

Wat is een cppcheck-opdracht in Linux?

Het Linux-besturingssysteem biedt een cppcheck-opdracht om een ​​broncodebestand te analyseren op bugs en fouten. Het is een opdrachtregelprogramma dat een C- of C++-bestand analyseert om fouten en bugs te vinden die een compiler zou kunnen missen. Het kan meerdere preprocessor-commando's, macro's, enz. beheren. Het is een veelzijdige, efficiënte en betrouwbare tool die in staat is om de inline assembly-code, compiler-extensies, niet-standaard code, enz. te controleren. Het bevat verschillende statische controles die mogelijk niet worden behandeld in de samenstellers zelf. Deze statische analysecontroles, waaronder geheugenlekcontroles, grenscontroles, eliminatie van dode code, automatische controle van variabelen, controle op bronlekken, enz., worden uitgevoerd op broncodeniveau zonder de code echt uit te voeren. Al met al is het doel om de echte fouten in de code te vinden.

Hoe de cppcheck-opdracht in Linux inschakelen?

Het Linux-besturingssysteem installeert de bibliotheken, pakketten en opdrachten niet automatisch. De gebruiker moet de opdrachten en bibliotheken in Linux handmatig installeren om ze te gebruiken. Daarom moet het cppcheck-pakket in het Linux-besturingssysteem worden geïnstalleerd, zodat het cppcheck-commando correct kan worden gebruikt. Om dat te doen, gebruiken we het apt-commando:









Hiermee wordt het cppcheck-pakket geïnstalleerd en kunt u het cppcheck-commando gebruiken. Om het installatieproces te starten, moet u mogelijk het root-wachtwoord opgeven:







Geef het wachtwoord zodat het installatieproces kan beginnen. Zodra de installatie van het cppcheck-pakket is voltooid, krijgt u de volgende uitvoer:



Syntaxis van cppcheck-opdracht in Linux

De opdracht cppcheck wordt gebruikt om een ​​C- of C++-bestand te analyseren, dus de te analyseren bestandsnaam is nodig. Hier is de syntaxis van de opdracht cppcheck:

De cppcheck is de naam van de opdracht die het bestand zal analyseren op bugs en fouten. De -optie verwijst naar een van de beschikbare opties voor het cppcheck-commando, zoals -E, -U, all, style, warning, performance, enz. Om de lijst met alle opties te verkrijgen, wordt de –help-optie gebruikt met de cppcheck opdracht. Gebruik de onderstaande opdracht en toon alle opties voor de cppcheck-opdracht:

Hiermee wordt de hele lijst met opties geretourneerd met hun beschrijving die kan worden gebruikt met de opdracht cppcheck. Zie de lijst hieronder:

En tot slot vertegenwoordigt de bestandsnaam/directory ofwel de naam van het bestand dat moet worden geanalyseerd, ofwel de directory die het bestand bevat. Als de opgegeven bestandsnaam niet is opgegeven en de map is wel opgegeven, zoekt de opdracht cppcheck naar alle bronbestanden en controleert deze recursief. Laten we zeggen dat we een broncodebestand hebben met de naam 'ccode.c' en dat het zich in de map Downloads bevindt. Laten we het onderzoeken met de opdracht cppcheck:

Hier wordt de vlag -check-config gebruikt om de configuratie van de cppcheck te controleren. Hier is de uitvoer van het bovenstaande commando:

De normale code-analyse wordt uitgeschakeld door de vlag –check-config, dus het geeft de juiste analyse. In plaats daarvan toont het u de fouten en bugs in de code, die u kunt zien in de bovenstaande schermafbeelding.

Druk de preprocessor-uitvoer af op de standaardterminal

Als u de code met zijn uitvoer op de standaard stdout wilt zien en niets wilt doen, dan kunt u de vlag -E gebruiken met het cppcheck-commando; de vlag -E stelt de cppcheck-opdracht in staat om de preprocessor-uitvoer op stdout weer te geven. Hier is het uitvoerbare commando:

Dit geeft je wat het bestand ccode.c heeft en voert geen actie uit op de code. Zie de uitvoer hieronder:

Zoals u kunt zien, heeft de vlag -E de code weergegeven die is opgeslagen in het bestand ccode.c en heeft er niets mee gedaan.

Alle aanvullende controles inschakelen

De standaardcontroles van cppcheck zijn misschien gewoon het controleren van inline code of compilerextensie. Om alle andere controles in te schakelen, heeft de cppcheck een -all vlag. Dit maakt alle controles voor het cppcheck-commando mogelijk, zodat het hele programma kan worden gecontroleerd op extra controles, inclusief portabiliteit, stijl, waarschuwing, enz. Laten we de vlag –enable uitvoeren met het cppcheck-commando met de extensie 'all' en alles inschakelen extra controles. Zie de opdracht in de onderstaande schermafbeelding:

Hierdoor worden alle aanvullende controles in het bestand 'ccode.c' ingeschakeld. Dit is de uitvoer die we krijgen als we de bovenstaande opdracht uitvoeren:

Omdat er enkele fouten in de code zitten, heeft de opdracht cppcheck de fouten en bugs in de code geretourneerd. Alle opties van de opdracht cppcheck worden op dezelfde manier gebruikt. Ze volgen allemaal hetzelfde formaat, maar geven een ander resultaat. Gebruik een optie of vlag door dezelfde syntaxis te volgen en u krijgt het gewenste resultaat.

Conclusie

Deze korte handleiding is een kort overzicht van het cppcheck commando in het Linux besturingssysteem. De opdracht cppcheck in het Linux-besturingssysteem is een opdrachtregelprogramma dat wordt gebruikt om een ​​broncodebestand te onderzoeken om de bugs en fouten te vinden die door de compiler zelf kunnen worden gemist. Het is een gebruiksvriendelijke en efficiënte opdrachtregeltool waarmee de gebruiker het probleem in code kan vinden. We hebben enkele vlaggen gebruikt met het cppcheck-commando om de werking van het cppcheck-commando te testen en te zien hoe het werkt. Als u deze instructies en voorbeeldvoorbeelden volgt, kunt u elke optie of vlag gebruiken die is gekoppeld aan de opdracht cppcheck.