Cppcheck

Linux.fista
Versio hetkellä 10. tammikuuta 2009 kello 16.37 – tehnyt 88.195.254.17 (keskustelu) (Ak: Uusi sivu: {{ Ohjelma | nimi=Cppcheck | kuva= | kuvateksti= | lisenssi=GPL| käyttöliittymä=teksti | kotisivu=[http://cppcheck.wiki.sourceforge.net/] }} Cppcheck on ohjelmointityökalu, ...)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun
Cppcheck
Käyttöliittymä teksti
Lisenssi GPL
Kotisivu [1]

Cppcheck on ohjelmointityökalu, millä voi etsiä virheitä C ja C++ ohjelmien lähdekoodista staattisesti. Yleisimmät virheet mitä Cppcheck löytää ovat yhden funktion sisällä tapahtuvat muistivuodot, mutta sillä voi etsiä myös monia muita tyypillisiä virheitä.

Cppcheck on löytänyt 20 varmistettua ja korjattua bugia Linuxin kernelistä ja monia muita muista tunnetuista avoimen lähdekoodin projekteista.

Cppcheck on avoimen lähdekoodin projekti ja se on GPL lisenssin alainen. Se on kirjoitettu C++:lla ja sen sivuja ylläpitää Sourceforge.net.

Käyttö

cppcheck tarkistettava_hakemisto/

Tämän jälkeen tulostuu tilannetietoa siitä mitä tiedostoa tarkistetaan ja väliin tulostuu virheitä jos niitä löytyy.

Esimerkki

#include <stdlib.h>
int main()
{
  int *a;
  char b[2];
  a = malloc(100);
  b[4] = 0;
  return 0;
}

Cppcheck:n tulostus:

$ ./cppcheck a.c
Checking a.c...
[a.c:8]: Memory leak: a
[a.c:7]: Array index out of bounds

Korjattu lähdekoodi:

#include <stdlib.h>
int main()
{
  int *a;
  char b[5];
  a = malloc(100);
  b[4] = 0;
  free( a );
  return 0;
}

Aiheesta muualla

Katso myös