Quellcode-Paket pmccabe herunterladen:
Pmccabe berechnet McCabe-artige zyklomatische Komplexität und Zeilenzählung für Quelltext in C und C++. Die Komplexität pro Funktion kann zum Entdecken möglicher Problempunkte und zum Abschätzen des Testaufwands benutzt werden.
Pmccabe beinhaltet außerdem einen nicht kommentierten Zeilenzähler, der mit anac kompatibel ist, »decomment«, das nur Kommentare aus dem Quelltext entfernt, »codechanges«, ein Programm, das die Anzahl der Änderungen zwischen zwei Quellbäumen oder -dateien berechnet, und »vifn«, um »vi« mit einem Funktionsnamen statt einem Dateinamen aufzurufen.
Pmccabe versucht, die scheinbare Komplexität statt der Komplexität gemäß des C++- und/oder CPP-Präzessors zu folgen. Dadurch wird Pmccabe durch CPP-Konstrukte verwirrt, die zu unpassenden geschweiften Klammern führen - das meiste davon kann so neu geschrieben werden, dass Schöndrucker davon nicht verwirrt werden. Pmccabe gibt C-compiler-artige Fehlermeldungen aus, wenn der Parser verwirrt ist, so dass sie mit Standardwerkzeugen durchgelesen werden können.
Es werden zwei Arten zyklomatischer Komplexität erzeugt - ein Typ zählt jedes switch()-Statement unabhängig von der Anzahl der cases in ihm und der andere, traditionellere Weg zählt jedes case im switch(). Pmccabe berechnet außerdem die Startzeile jeder Funktion, die Anzahl der Zeilen einer Funktion und die Anzahl der C-Statements innerhalb der Funktion.
|
|
|
| Architektur | Paketgröße | Größe (installiert) | Dateien |
|---|---|---|---|
| alpha | 25,5 kB | 128 kB | [Liste der Dateien] |
| amd64 | 23,8 kB | 120 kB | [Liste der Dateien] |
| armel | 23,6 kB | 112 kB | [Liste der Dateien] |
| avr32 (inoffizielle Portierung) | 23,4 kB | 112 kB | [Liste der Dateien] |
| hppa | 24,4 kB | 116 kB | [Liste der Dateien] |
| hurd-i386 | 21,7 kB | 112 kB | [Liste der Dateien] |
| i386 | 21,9 kB | 72 kB | [Liste der Dateien] |
| ia64 | 29,6 kB | 140 kB | [Liste der Dateien] |
| kfreebsd-amd64 | 23,8 kB | 78 kB | [Liste der Dateien] |
| kfreebsd-i386 | 21,8 kB | 74 kB | [Liste der Dateien] |
| m68k (inoffizielle Portierung) | 20,8 kB | 108 kB | [Liste der Dateien] |
| mips | 25,0 kB | 128 kB | [Liste der Dateien] |
| mipsel | 24,7 kB | 128 kB | [Liste der Dateien] |
| powerpc | 24,3 kB | 120 kB | [Liste der Dateien] |
| s390 | 23,7 kB | 116 kB | [Liste der Dateien] |
| sparc | 22,4 kB | 112 kB | [Liste der Dateien] |