<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Cppcheck</id>
	<title>Cppcheck - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Cppcheck"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Cppcheck&amp;action=history"/>
	<updated>2026-05-25T22:10:07Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Cppcheck&amp;diff=2298618&amp;oldid=prev</id>
		<title>imported&gt;Snoopy1964: Archivlinks überprüft, Weblink aktualisiert (https)</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Cppcheck&amp;diff=2298618&amp;oldid=prev"/>
		<updated>2024-03-15T14:39:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php/Kategorie:Wikipedia:Defekte_Weblinks&quot; title=&quot;Kategorie:Wikipedia:Defekte Weblinks&quot;&gt;Archivlinks&lt;/a&gt; überprüft, Weblink aktualisiert (https)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Software&lt;br /&gt;
|Name                  = Cppcheck&lt;br /&gt;
|Logo                  = &lt;br /&gt;
|Screenshot            = &lt;br /&gt;
|Beschreibung          = &amp;lt;!-- Beschreibung des Screenshots! --&amp;gt;&lt;br /&gt;
|Maintainer            = Daniel Marjamäki u.&amp;amp;nbsp;a.&lt;br /&gt;
|Hersteller            = &lt;br /&gt;
|Management            = &lt;br /&gt;
|Erscheinungsjahr      = &lt;br /&gt;
|AktuelleVersion       = &lt;br /&gt;
|AktuelleVersionFreigabeDatum = &lt;br /&gt;
|AktuelleVorabVersion  = &lt;br /&gt;
|AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
|Betriebssystem        = [[Plattformunabhängigkeit|plattformunabhängig]]&lt;br /&gt;
|Programmiersprache    = [[C++]]&lt;br /&gt;
|Kategorie             = [[Programmierwerkzeug]]&lt;br /&gt;
|Lizenz                = &lt;br /&gt;
|Deutsch               = nur [[GUI]]&amp;lt;br /&amp;gt;(engl.&amp;amp;nbsp;[[Kommandozeile]])&lt;br /&gt;
|Website               = [https://cppcheck.sourceforge.io/ cppcheck.sourceforge.io]&lt;br /&gt;
|Dateien               = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Cppcheck&amp;#039;&amp;#039;&amp;#039; ist ein Programm zur [[Statische Code-Analyse|statischen Codeanalyse]] für die [[Programmiersprache]]n [[C (Programmiersprache)|C]] und [[C++]]. Es wird aktiv entwickelt&amp;lt;ref&amp;gt;[https://github.com/danmar/cppcheck/ Cppcheck.] GitHub&amp;lt;/ref&amp;gt; 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.&amp;lt;ref&amp;gt;softeng.rl.ac.uk: {{Webarchiv |url=http://www.softeng.rl.ac.uk/media/uploads/publications/2010/03/c-c_tools_report.pdf |text=&amp;#039;&amp;#039;A Survey of C and C++ Software Tools for Computational Science&amp;#039;&amp;#039; |format=PDF; 218&amp;amp;nbsp;kB, englisch |wayback=20120312224600 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Funktionen ==&lt;br /&gt;
Cppcheck unterstützt eine Reihe von statischen Tests, die von [[Compiler]]n nicht oder nur teilweise durchgeführt werden, wie z.&amp;amp;nbsp;B.:&lt;br /&gt;
* Array-Überläufe&lt;br /&gt;
* Ressourcen- und [[Speicherleck]]s&lt;br /&gt;
* Benutzung veralteter Funktionen&amp;lt;ref&amp;gt;[http://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xsh_chap03.html Liste veralteter Funktionen]&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Verwendung von Funktionen, die nicht [[Threadsicherheit|threadsicher]] sind&lt;br /&gt;
* falsche Benutzung der [[Standard Template Library]]&lt;br /&gt;
* Ungenauigkeiten beim Aufruf von C-Standardbibliotheksfunktionen, z.&amp;amp;nbsp;B. [[Formatstring-Angriff|verdächtige Formatstrings]] bei printf-Funktionen&lt;br /&gt;
* inkorrekte [[Ausnahmebehandlung]]&lt;br /&gt;
* verschiedene Geschwindigkeits- und Stiloptimierungen&lt;br /&gt;
* fehlerhafte Verwendung von Zeigervariablen&lt;br /&gt;
* uninitialisierte Variable&lt;br /&gt;
* „verdächtige“ Ausdrücke, wie z.&amp;amp;nbsp;B. Semikolon hinter Bedingung&lt;br /&gt;
&lt;br /&gt;
== Verbreitung ==&lt;br /&gt;
Das Programm wird von einigen [[Linux-Distribution]]en verteilt und mitentwickelt&amp;lt;ref&amp;gt;[http://packages.qa.debian.org/c/cppcheck.html Cppcheck in Debian]&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://www.freebsd.org/cgi/cvsweb.cgi/ports/devel/cppcheck/distinfo?sortby=rev Cppcheck in FreeBSD]&amp;lt;/ref&amp;gt; und existiert sowohl eigenständig als auch in Form von [[Plug-in]]s für verschiedene Entwicklungsumgebungen:&lt;br /&gt;
* [[Code::Blocks]]&lt;br /&gt;
* [[CodeLite]]&amp;lt;ref&amp;gt;[https://wiki.codelite.org/pmwiki.php/Main/CppCheck &amp;#039;&amp;#039;CppCheck Plugin&amp;#039;&amp;#039;] im CodeLite-Wiki, abgerufen am 13. Juli 2021.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[Eclipse (IDE)|Eclipse]]&amp;lt;ref&amp;gt;[https://github.com/kwin/cppcheclipse Cppcheclipse]&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[Jenkins (Software)|Jenkins]]&amp;lt;ref&amp;gt;[http://wiki.jenkins-ci.org/display/JENKINS/Cppcheck+Plugin Cppcheck Plugin für Jenkins]&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[Visual Studio]] (über das Plug-in &amp;#039;&amp;#039;Cppcheck add-in&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;{{Internetquelle |url=https://marketplace.visualstudio.com/items?itemName=Alexium.Cppcheckadd-in |titel=Cppcheck add-in |werk=Visual Studio Marketplace |abruf=2018-10-12}}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* [[PlatformIO]]&lt;br /&gt;
* [[KDevelop]]&lt;br /&gt;
&lt;br /&gt;
Außer der Version für die Kommandozeile existiert eine [[grafische Benutzeroberfläche]] basierend auf [[Qt (Bibliothek)|Qt]].&lt;br /&gt;
&lt;br /&gt;
Cppcheck wird in einigen großen Projekten eingesetzt und hat bereits geholfen, Fehler zu finden und zu beseitigen.&amp;lt;ref&amp;gt;[http://sourceforge.net/p/cppcheck/wiki/Found_bugs/ Auflistung einiger wichtiger Fehlerfunde.] Cppcheck-Wiki&amp;lt;/ref&amp;gt; Dazu gehören unter anderem der [[Linux (Kernel)|Linux-Kernel]], [[OpenOffice.org]]&amp;lt;ref&amp;gt;cl.cam.ac.uk: {{Webarchiv|url=http://www.cl.cam.ac.uk/~wmk26/openoffice/openoffice9.pdf |wayback=20120928061319 |text=&amp;#039;&amp;#039;Hunting for vulnerabilities in large software: the OpenOffice suite&amp;#039;&amp;#039; |format=PDF; 127&amp;amp;nbsp;kB, englisch }}&amp;lt;/ref&amp;gt; und [[LibreOffice]], [[Debian]]&amp;lt;ref&amp;gt;[http://lwn.net/Articles/420252/ &amp;#039;&amp;#039;Introducing the “Debian’s Automated Code Analysis” (DACA) project&amp;#039;&amp;#039;.]lwn.net &amp;lt;/ref&amp;gt; und [[MPlayer]].&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Entwicklungsgeschichte ==&lt;br /&gt;
Das Programm wird seit Mai 2007 entwickelt. Im Abstand von ein bis drei Monaten erscheinen neue Versionen mit neuen und verbesserten Tests. Folgende Tabelle zeigt beispielhaft wichtige Meilensteine der Entwicklung und die zugehörigen Veröffentlichungsdaten. Die vollständige Historie kann in der Trac-Roadmap nachgelesen werden.&amp;lt;ref&amp;gt;[http://trac.cppcheck.net/roadmap?show=all Überblick der Versionshistorie]&amp;lt;/ref&amp;gt; Die öffentlichen Freigabe-Benachrichtigungen finden sich in den Projekt-Neuigkeiten der SourceForge-Webseiten.&amp;lt;ref&amp;gt;[https://sourceforge.net/p/cppcheck/news/ cppcheck / News]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Version&lt;br /&gt;
! Veröffentlichung&lt;br /&gt;
!class=&amp;quot;unsortable&amp;quot;| Anmerkungen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.28}}&lt;br /&gt;
| {{DatumZelle|2009-02-01}}&lt;br /&gt;
| Erste dokumentierte Version.&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.51}}&lt;br /&gt;
| {{DatumZelle|2011-10-08}}&lt;br /&gt;
| Neue Tests: [[Initialisierungsliste|Initialisierungsreihenfolge in Konstruktoren]], redundante boolesche Vergleiche&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.52}}&lt;br /&gt;
| {{DatumZelle|2011-12-10}}&lt;br /&gt;
| Neue Tests: Diverse Tests auf falsche Verwendung von bestimmten Funktion, Tests auf verdächtige Verwendungen des Semikolons&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.53}}&lt;br /&gt;
| {{DatumZelle|2012-02-11}}&lt;br /&gt;
| Verbesserung vieler existierender Tests&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.54}}&lt;br /&gt;
| {{DatumZelle|2012-04-15}}&lt;br /&gt;
| Verbesserung vieler existierender Tests, interne Überarbeitungen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.55}}&lt;br /&gt;
| {{DatumZelle|2012-06-30}}&lt;br /&gt;
| UTF-16-Dateien können analysiert werden, Geschwindigkeitsoptimierungen, Verbesserung bestehender Tests&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.61}}&lt;br /&gt;
| {{DatumZelle|2013-08-03}}&lt;br /&gt;
| Unterstützung externer Konfigurationsdateien für Bibliotheken, neue Tests auf undefinierte Ausdrücke (Rechnen mit Unendlich, NaN, &amp;lt;code&amp;gt;sizeof(void)&amp;lt;/code&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.62}}&lt;br /&gt;
| {{DatumZelle|2013-10-12}}&lt;br /&gt;
| Neue Tests: Prüfung ob Variable gleich 0 erst &amp;#039;&amp;#039;nach&amp;#039;&amp;#039; Division durch diese Variable, Existenz von Member mit selbem Namen wie Member einer Basisklasse&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.63}}&lt;br /&gt;
| {{DatumZelle|2014-01-04}}&lt;br /&gt;
| Umstellung bestehender Tests auf [[Syntaxbaum|Syntaxbäume]], neuer Test auf Addition von (nicht dereferenzierten) Pointern und Zahlen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.64}}&lt;br /&gt;
| {{DatumZelle|2014-03-02}}&lt;br /&gt;
| Beginn der Umstellung der bestehenden Tests auf funktionsübergreifende generische [[Datenflussanalyse]]&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.65}}&lt;br /&gt;
| {{DatumZelle|2014-05-10}}&lt;br /&gt;
| Erweiterungen, Verbesserungen u.&amp;amp;nbsp;a. bei der Verarbeitung von [[C++11]]-Konstrukten&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.66}}&lt;br /&gt;
| {{DatumZelle|2014-08-02}}&lt;br /&gt;
| Verbesserungen an Syntaxbaum- und Datenflussanalyse, Umstellung von Tests auf diese Mittel nutzen&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.67}}&lt;br /&gt;
| {{DatumZelle|2014-10-18}}&lt;br /&gt;
| Mehr Überprüfungen, Verbesserungen u.&amp;amp;nbsp;a. bei der Verarbeitung von [[C++11]]-Konstrukten&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.68}}&lt;br /&gt;
| {{DatumZelle|2015-01-03}}&lt;br /&gt;
| Verbesserungen u.&amp;amp;nbsp;a. bei der Verarbeitung von überladenen Funktionen, Templates, Überläufe in Zeigerarithmetik. Unterstützung für die C++11-Features &amp;lt;code&amp;gt;noexcept(false)&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;[[noreturn]]&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.72}}&lt;br /&gt;
| {{DatumZelle|2016-01-09}}&lt;br /&gt;
| Plattform-spezifische Konfigurationen, Einstellung zur Konfiguration von integralen Variablen, neue Option -E (Code wird nur durch den Präprozessor bearbeitet), [[Dump]]en der Konfigurationseinstellungen. Entfernung von unnötigen Prüfungen (forward declaration).&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.77}}&lt;br /&gt;
| {{DatumZelle|2016-12-31}}&lt;br /&gt;
| Verbesserte Unterstützung für VisualStudio Solutions, Erkennung von Zeigerüberläufen und unkorrekte Benutzung von Variablen nach &amp;lt;code&amp;gt;std::move&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;std::forward&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.78}}&lt;br /&gt;
| {{DatumZelle|2017-04-01}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.79}}&lt;br /&gt;
| {{DatumZelle|2017-05-13}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.80}}&lt;br /&gt;
| {{DatumZelle|2017-07-29}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.81}}&lt;br /&gt;
| {{DatumZelle|2017-10-07}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|o|1.82}}&lt;br /&gt;
| {{DatumZelle|2018-01-14}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| {{Version|c|1.85}}&lt;br /&gt;
| {{DatumZelle|2018-10-14}}&lt;br /&gt;
|&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| {{Version |l |zeige=110101}}&lt;br /&gt;
|}&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://cppcheck.sourceforge.io/ Cppcheck-Website] ({{enS}})&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references responsive /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Freies Programmierwerkzeug]]&lt;br /&gt;
[[Kategorie:C++]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Snoopy1964</name></author>
	</entry>
</feed>