Uno strumento gratuito per controllare il codice sorgente C / C ++ contro una serie di standard di codifica?

Sembra abbastanza facile trovare un tale strumento per Java ( Checkstyle , JCSC ), ma non riesco a trovarne uno per C / C ++. Non sto cercando un analizzatore di codice statico simile a sfilacciamento, vorrei solo controllare gli standard di codifica come la denominazione delle variabili, la capitalizzazione, la spaziatura, l’identificazione, il posizionamento delle parentesi e così via.

L’unico strumento che conosco è Vera . Non l’ho usato, però, quindi non posso commentare quanto sia praticabile. La demo sembra promettente.

Google c ++ lint dalla guida allo stile del codice di Google .

Sono sicuro che questo potrebbe aiutare in qualche misura il controllo cxx . Anche questo strumento sembra essere abbastanza buono KWStyle È di Kitware, i ragazzi che sviluppano Cmake.

Non è esattamente quello che chiedi, ma ho trovato più semplice essere tutti d’accordo su uno standard che può generare e quindi automatizzare il processo.

Prova nsiqcppstyle . È un correttore di stile di codifica basato su Python per C / C ++. È facile estendere le tue regole.

C’è una lista . C’è anche un frontend del linguaggio C ++ su splint .

Ho usato uno strumento nel mio lavoro nella suite di strumenti LDRA

Viene utilizzato per testare il codice c / c ++ ma può anche verificare gli standard di codifica come MISRA ecc.

Controlla universalindentgui su sourceforge.net .

ha molte pedine stile per C e puoi personalizzare le pedine.

C’è cppcheck che è supportato anche da Hudson tramite il plugin con lo stesso nome.

Controlla Metrix ++ http://metrixplusplus.sourceforge.net/ . Potrebbe richiedere delle estensioni specifiche per le tue esigenze.

Controlla il codice Abraxas Controlla http://www.abxsoft.com/codchk_user.html

Attualmente sto lavorando a un progetto con un altro progetto per scrivere solo uno strumento del genere. Ho esaminato altri strumenti di analisi del codice statico e ho deciso che avrei potuto fare di meglio.

Sfortunatamente, il progetto non è ancora pronto per essere usato senza una conoscenza abbastanza approfondita del codice ( leggi: è buggy come se niente fosse ). Tuttavia, ci stiamo muovendo abbastanza velocemente e speriamo di avere una versione beta entro le prossime 8 settimane.

Il progetto è open source: puoi visitare la pagina del progetto e, se vuoi essere coinvolto, ci piacerebbe un altro input esterno.

Non voglio annoiarvi con i dettagli – potete visitare la pagina del progetto per questo, ma dirò una cosa: la maggior parte degli strumenti di analisi del codice statico sono finalizzati a controllare il codice per gli errori e non sono molto interessati al controllo delle linee guida di codifica. Abbiamo adottato un approccio più flessibile che ci consente di scrivere dei plugiin per verificare sia le “regole della casa” che i possibili errori.

Se desideri ulteriori informazioni, non esitare a contattarmi.

Saluti,