Cppcheck

Cppcheck
Cppcheck
원저작자다니엘 마르자매키
초기 릴리즈2007년 5월 8일, 15년 전(2007-05-08)
안정된 릴리스
2.8[1] / 2022년 5월 21일; 16일 전 (2022년 5월 21일)
저장소
기입처C++
운영 체제크로스 플랫폼
이용가능기간:영어, 네덜란드어, 핀란드어, 스웨덴어, 독일어, 러시아어, 일본어, 세르비아어, 스페인어, 프랑스어, 이탈리아어, 한국어, 중국어
유형정적 코드 분석
면허증.GNU 일반 공중 라이선스
웹 사이트cppcheck를 클릭합니다.소스 포지로 이동합니다.그물

Cppcheck는 C 및 C++ 프로그래밍 언어용 정적 코드 분석 도구입니다.비표준 [2]코드를 확인할 수 있는 범용 도구입니다.크리에이터 겸 리드 개발자는 Daniel Marjaméki입니다.

Cppcheck는 GNU General Public License의 자유 소프트웨어입니다.

특징들

Cppcheck는 컴파일러 자체로는 커버할 수 없는 다양한 정적 체크를 지원합니다.이러한 검사는 소스 코드 수준에서 수행할 수 있는 정적 분석 검사입니다.이 프로그램은 본질적으로 경험적인 것이 아니라 엄격한 정적 분석 체크를 지향합니다.

지원되는 검사에는 다음이 포함됩니다.

  • 자동 변수 확인
  • 어레이 오버런에 대한 경계 검사
  • 클래스 체크(미사용 기능, 변수 초기화 및 메모리 복제 등)
  • Open[3] Group에 따라 사용되지 않거나 대체된 기능 사용
  • 예외 안전 점검(예: 메모리 할당 및 소멸자 점검)
  • 메모리 누수(할당 해제 없이 스코프 상실로 인한 경우 등
  • 파일 핸들 닫는 것을 잊어버린 경우 등 리소스 누출
  • 표준 템플릿 라이브러리 함수 및 관용구잘못된 사용
  • 사용하지 않는 데드 코드 제거기능 옵션
  • 기타 스타일 및 퍼포먼스 오류

많은 분석 프로그램과 마찬가지로 프로그래밍 숙어의 특이한 경우가 많은데, 이는 특정 대상 사례에서 허용되거나 프로그래머의 소스 코드 수정 범위 밖에서도 허용될 수 많은 경우입니다.2009년 3월에 실시된 연구에서는 Cppcheck에 의해 잘못된 양성이 발견된 여러 영역을 식별했지만, [4]조사된 프로그램 버전을 명시하지는 않았다.Cppcheck는 CERNs 4DSOFT 메타 분석 [5]패키지와 같은 시스템, 고에너지 입자 검출기 판독 [6]장치의 코드 검증, 전파[7] 망원경의 시스템 모니터링 소프트웨어, OpenOffice[8].org 및 Debian [9]아카이브와 같은 대규모 프로젝트의 오류 분석에 사용할 수 있는 것으로 확인되었습니다.

발전

이 프로젝트는 현재[10] 활발하게 개발 중이며 다양한 [11][12]배포에서 활발하게 유지되고 있습니다.Linux 커널이나 MPlayer와 [14]같은 많은 인기[13] 프로젝트에서 유효한 버그를 발견했습니다.

플러그인

다음 IDE 또는 텍스트 편집기에[15] 대한 플러그인이 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Cppcheck-2.8". Retrieved 22 May 2022.
  2. ^ "A Survey of C and C++ Software Tools for Computational Science" (PDF). Science and Technologies Facility Council. Chilbolton, Daresbury, and Rutherford Appleton Laboratories. December 2009. p. 14. Archived from the original (PDF) on 12 March 2012. Retrieved 14 September 2010.
  3. ^ "System Interfaces". pubs.opengroup.org. Retrieved 2020-09-24.
  4. ^ "Static Code Analysis For Embedded Systems" (PDF).
  5. ^ "Dissemination and use of knowledge plan (EU Deliverable DNA2.11" (PDF). 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)" (PDF). 2010. Archived from the original (PDF) on 2012-03-11.
  7. ^ "The Wettzell System Monitoring Concept and First Realizations" (PDF). International VLBI Service for Geodesy & Astrometry. 2010. p. 447.
  8. ^ "Hunting for vulnerabilities in large software : the OpenOffice suite" (PDF).
  9. ^ "Introducing the "Debian's Automated Code Analysis" (DACA) project". LWN.net.
  10. ^ Github의 Cppcheck
  11. ^ Debian 패키지 추적 시스템의 cppcheck
  12. ^ FreeBSD 포트
  13. ^ "List of user reported bugs found by cppcheck".
  14. ^ "Found Bugs list". SourceForge. Archived from the original on 2013-10-14.
  15. ^ "SourceForge.net: cppcheck". sourceforge.net. Archived from the original on 2012-07-18.
  16. ^ "cppcheck plugin for CLion". plugins.jetbrains.com.
  17. ^ "Cppcheclipse". github.com.
  18. ^ "Flycheck". github.com.
  19. ^ "gedit Cppcheck plugin". github.com. Archived from the original on 2012-12-17.
  20. ^ "Cppcheck Plugin". hudson-ci.org. Archived from the original on 2017-10-26. Retrieved 2010-09-15.
  21. ^ "Cppcheck Plugin". jenkins-ci.org.
  22. ^ Cullmann, Christoph (2013-02-02). "Kate Project Plugin News – Code Analysis". Kate Get an Edge in Editing. Retrieved 2016-12-14.
  23. ^ Funk, Kevin (2016-12-06). "KDevelop's Cppcheck plugin merged into kdevelop.git, will be released with 5.1". Retrieved 2016-12-14.
  24. ^ "Qt Creator Plug-in Gallery". Qt Wiki.
  25. ^ "Sublimelinter plugin". github.com.
  26. ^ "Cppcheck add-in". Visual Studio Marketplace.
  27. ^ VioletGiraffe. "Homepage cppcheck-vs-addin". Retrieved 3 March 2014.
  28. ^ Srix. "Simple open source static analysis tool for Visual Studio". Archived from the original on 2015-02-10. Retrieved 27 August 2012.
  29. ^ Scovetta, Michael. "Yasca".

외부 링크