Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Cppcheck — Wikipédia
Cppcheck — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
Cppcheck
Description de l'image Cppcheck icon.png.
Description de l'image CppcheckPortable 2.13.0 en.png.
Informations
Créateur Daniel Marjamäki
Première version 8 mai 2007; 11 ans auparavant
Dernière version 2.18.0 (20 juillet 2025)[1]Voir et modifier les données sur Wikidata
Dépôt github.com/danmar/cppcheckVoir et modifier les données sur Wikidata
Écrit en C++
Système d'exploitation Type UnixVoir et modifier les données sur Wikidata
Environnement Cross-platform
Langues Anglais, Néerlandais, Finlandais, Suédois, Allemand, Russe, Polonais, Japonais, Serbe
Type Qualité logicielle
Licence GNU General Public License
Site web cppcheck.sourceforge.net

modifier - modifier le code - voir Wikidata (aide)

Cppcheck est un outil d'analyse de code statique pour les langages de programmation C et C++. C'est un outil polyvalent qui permet de vérifier du code non standard[2]. Le créateur et développeur principal est Daniel Marjamäki.

Cppcheck est un un logiciel open-core avec sa version de base sous la Licence Publique Générale de GNU.

Caractéristiques

[modifier | modifier le code]

Cppcheck prend en charge une large variété de vérifications statiques qui peuvent ne pas être couverts par le compilateur lui-même. Ces vérifications sont des contrôles d'analyse statique qui peuvent être effectués au niveau du code source. Le programme se concentre sur les contrôles rigoureux de l'analyse statique, plutôt que par heuristique.

Certains des contrôles qui sont pris en charge comprennent :

  • Vérification de variables automatiques.
  • La vérification des limites de la taille des tableaux pour éviter un dépassement
  • La vérification des classes (par exemple les fonctions inutilisées, l'initialisation d'une variable ou la duplication de mémoire)
  • L'utilisation des fonctions obsolètes ou remplacées conformément à l'Open Group[3]
  • Vérification des exceptions de sécurité, par exemple les vérifications des utilisations d'allocation et de destruction de mémoire.
  • Les fuites de mémoire, par exemple due à la perte de portée sans libération
  • Les fuites de ressource, par exemple oublier de fermer un descripteur de fichier.
  • L'utilisation non valide de fonctions de la Bibliothèque de modèles Standard et d'expressions idiomatiques
  • Divers stylistiques et des erreurs de performance

Comme dans le cas de nombreux programmes d'analyse, il existe beaucoup de cas inhabituels d'expressions idiomatiques qui peuvent être acceptables, dans des cas particuliers ciblés, ou hors de la portée du programmeur lors de la correction du code source. Une étude menée en mars 2009, a identifié plusieurs domaines où des faux positifs ont été trouvés par Cppcheck, mais sans spécifier la version du programme examiné[4]. Cppcheck est utilisé dans des systèmes tels que le méta-anlayseur de paquet du CERN 4DSOFT[5], pour le code de vérification dans les dispositifs de détecteur de particules à haute énergie[6], le système de surveillance de radio-télescopes[7] ainsi que pour l'analyse d'erreurs dans de grands projets, tels que OpenOffice.org[8] et l'archive Debian[9].

Développement

[modifier | modifier le code]

Le projet est activement en cours de développement[10] et est maintenu dans plusieurs distributions[11],[12]. Il a déjà trouvé plusieurs bugs dans un certain nombre de projets populaires[13] comme le noyau Linux ou MPlayer[14].

Les Plugins

[modifier | modifier le code]

Des Plugins pour les IDE suivant existent[15] :

  • CLion[16]
  • Code::Blocks - intégré.
  • CodeLite intégré.
  • Eclipse[17]
  • Emacs[18]
  • gedit[19]
  • Hudson[20]
  • Jenkins[21]
  • Kate[22]
  • KDevelop[23]
  • Qt Creator[24]
  • Sublime Texte[25]
  • Visual Studio[26]
  • Yasca[27]

Intégration dans Visual Studio

[modifier | modifier le code]

Le programme commercial tiers Visual Lint de la société britannique Riverblade peut être utilisé pour intégrer CppCheck dans Visual Studio[28].
Il y a également un plugin open-source cppcheck-vs-addin[29] qui est disponible.
Il est également possible d'ajouter Cppcheck en tant qu'un outil externe[30].

Voir aussi

[modifier | modifier le code]
  • Liste d'outils d'analyse statique (en)

Références

[modifier | modifier le code]
  1. ↑ GitHub (service Internet), consulté le 20 juillet 2025.Voir et modifier les données sur Wikidata
  2. ↑ « A Survey of C and C++ Software Tools for Computational Science » [archive du 12 mars 2012], Science and Technologies Facility Council, sur Science and Technologies Facility Council, Chilbolton, Daresbury, and Rutherford Appleton Laboratories, décembre 2009 (consulté le 14 septembre 2010), p. 14
  3. ↑ « System Interfaces », sur opengroup.org (consulté le 31 mai 2023).
  4. ↑ « Static Code Analysis For Embedded Systems »
  5. ↑ « Dissemination and use of knowledge plan (EU Deliverable DNA2.11 », 2010
  6. ↑ « Entwurf und Implementierung eines adaptiven, strahlentoleranten eingebetteten Systems am Beispiel eines Read-Out-Controllers (En: Development and implementation of an adaptive, radiation tolerant embedded system for operation of a Read-Out controller) » [archive du 11 mars 2012], 2010
  7. ↑ « The Wettzell System Monitoring Concept and First Realizations », International VLBI Service for Geodesy & Astrometry, 2010, p. 447
  8. ↑ « Hunting for vulnerabilities in large software : the OpenOffice suite »
  9. ↑ « Introducing the "Debian's Automated Code Analysis" (DACA) project », LWN.net
  10. ↑ Cppcheck on Github
  11. ↑ Cppcheck on Debian's Package Tracking System
  12. ↑ FreeBSD port
  13. ↑ « List of user reported bugs found by cppcheck »
  14. ↑ « Found Bugs list » [archive du 14 octobre 2013], SourceForge, sur SourceForge
  15. ↑ « SourceForge.net: cppcheck », sourceforge.net, sur sourceforge.net
  16. ↑ « cppcheck plugin for CLion », plugins.jetbrains.com, sur plugins.jetbrains.com
  17. ↑ « Cppcheclipse », github.com, sur github.com
  18. ↑ « Flycheck », github.com, sur github.com
  19. ↑ « gedit Cppcheck plugin », github.com, sur github.com
  20. ↑ « Cppcheck Plugin », hudson-ci.org, sur hudson-ci.org
  21. ↑ « Cppcheck Plugin », jenkins-ci.org, sur jenkins-ci.org
  22. ↑ Christoph Cullmann, « Kate Project Plugin News – Code Analysis », sur Kate | Get an Edge in Editing, 2 février 2013 (consulté le 14 décembre 2016)
  23. ↑ Kevin Funk, « KDevelop's Cppcheck plugin merged into kdevelop.git, will be released with 5.1 », 6 décembre 2016 (consulté le 14 décembre 2016)
  24. ↑ « Qt Creator Plug-in Gallery », Qt Wiki, sur Qt Wiki
  25. ↑ « Sublimelinter plugin », github.com, sur github.com
  26. ↑ « Cppcheck add-in », Visual Studio Marketplace, sur Visual Studio Marketplace
  27. ↑ Michael Scovetta, « Yasca »
  28. ↑ Riverblade, « Visual Lint homepage » (consulté le 11 décembre 2012)
  29. ↑ VioletGiraffe, « Homepage cppcheck-vs-addin » (consulté le 3 mars 2014)
  30. ↑ Srix, « Simple open source static analysis tool for Visual Studio » [archive du 10 février 2015] (consulté le 27 août 2012)

Liens externes

[modifier | modifier le code]
  • Sourceforge
  • icône décorative Portail de la programmation informatique
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Cppcheck&oldid=223178085 ».
Catégories :
  • Outil de développement logiciel
  • Qualité logicielle
  • Logiciel libre sous licence GPL
Catégories cachées :
  • Article contenant un lien mort
  • Page utilisant P348
  • Page utilisant P1324
  • Page utilisant P306
  • Article utilisant une Infobox
  • Article contenant un appel à traduction en anglais
  • Portail:Programmation informatique/Articles liés
  • Portail:Informatique/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id