Cppcheck ist ein Programm zur statischen Codeanalyse für die Programmiersprachen C und C++. Es wird aktiv entwickelt und unter der GNU General Public License veröffentlicht. Es unterstützt eine Vielzahl von Tests und ist in der Lage, nicht-standardisierten Code zu überprüfen.
Cppcheck | |
---|---|
Basisdaten
| |
Maintainer | Daniel Marjamäki u. a. |
Erscheinungsjahr | 8. Mai 2007 |
Aktuelle Version | 2.12.1 (20. September 2023) |
Betriebssystem | plattformunabhängig |
Programmiersprache | C++ |
Kategorie | Programmierwerkzeug |
Lizenz | GNU General Public License |
deutschsprachig | ja |
cppcheck.sourceforge.net |
Funktionen Bearbeiten
Cppcheck unterstützt eine Reihe von statischen Tests, die von Compilern nicht oder nur teilweise durchgeführt werden, wie z. B.:
- Array-Überläufe
- Ressourcen- und Speicherlecks
- Benutzung veralteter Funktionen
- Verwendung von Funktionen, die nicht threadsicher sind
- falsche Benutzung der Standard Template Library
- Ungenauigkeiten beim Aufruf von C-Standardbibliotheksfunktionen, z. B. verdächtige Formatstrings bei printf-Funktionen
- inkorrekte Ausnahmebehandlung
- verschiedene Geschwindigkeits- und Stiloptimierungen
- fehlerhafte Verwendung von Zeigervariablen
- uninitialisierte Variable
- „verdächtige“ Ausdrücke, wie z. B. Semikolon hinter Bedingung
Verbreitung Bearbeiten
Das Programm wird von einigen Linux-Distributionen verteilt und mitentwickelt und existiert sowohl eigenständig als auch in Form von Plug-ins für verschiedene Entwicklungsumgebungen:
- Code::Blocks
- CodeLite
- Eclipse
- Jenkins
- Visual Studio (über das Plug-in Cppcheck add-in)
- PlatformIO
- KDevelop
Außer der Version für die Kommandozeile existiert eine grafische Benutzeroberfläche basierend auf Qt.
Cppcheck wird in einigen großen Projekten eingesetzt und hat bereits geholfen, Fehler zu finden und zu beseitigen. Dazu gehören unter anderem der Linux-Kernel, OpenOffice.org und LibreOffice, Debian und MPlayer.
Weblinks Bearbeiten
- Cppcheck Webseite
- Cppcheck Handbuch (PDF; 178 kB)
Einzelnachweise Bearbeiten
- Release 2.12.1. 20. September 2023 (abgerufen am 19. Oktober 2023).
- Cppcheck. GitHub
- (Memento des vom 12. März 2012 im Internet Archive; PDF; 223 kB) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- Liste veralteter Funktionen
- Cppcheck in Debian
- Cppcheck in FreeBSD
- CppCheck Plugin im CodeLite-Wiki, abgerufen am 13. Juli 2021.
- Cppcheclipse
- Cppcheck Plugin für Jenkins
- Cppcheck add-in. In: Visual Studio Marketplace. Abgerufen am 12. Oktober 2018.
- Auflistung einiger wichtiger Fehlerfunde. Cppcheck-Wiki
- (Memento des vom 28. September 2012 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. (PDF; 130 kB)
- Introducing the “Debian’s Automated Code Analysis” (DACA) project.lwn.net