cppcheck
A static analysis tool for C/C++ code. tldr-pages
On several platforms
Several platforms
A static analysis tool for C/C++ code. Instead of syntax errors, it focuses on the types of bugs that compilers normally do not detect.
Recursively check the current directory, showing progress on the screen and logging error messages to a file
cppcheck . 2>cppcheck.logIdentifyRecursively check a given directory, and don't print progress messages
cppcheck --quiet path/to/directoryIdentifyCheck a given file, specifying which tests to perform (by default only errors are shown)
cppcheck --enable error path/to/file.cppIdentifyList available tests
cppcheck --errorlistIdentifyCheck a given file, ignoring specific tests
cppcheck --suppress test_id1 --suppress test_id2 path/to/file.cppIdentifyCheck the current directory, providing paths for include files located outside it (e.g. external libraries)
cppcheck -I include/directory_1 -I include/directory_2 .IdentifyCheck a Microsoft Visual Studio project (*.vcxproj) or solution (*.sln)
cppcheck --project path/to/project.slnIdentify