2013-08-14 2 views
2

정적 또는 동적 분석이 가능하며 무료입니다.C 코드에서 오류를 찾는 데 필요한 도구는 무엇입니까?

+0

솔직히 gcc의 출력을 사용하고 싶습니다. 나는 그것이 당신이 컴파일 할 때까지 코드가 잘못되어 보지 않음으로써 당신이 더 많은 것을 배울 수 있다고 생각합니다. 게다가, 당신은 서스펜스를 이길 수 없습니다! – Magn3s1um

+0

O/S는 무엇입니까? ... – Joe

+0

나는 컴파일러를 선호합니다. 여분의 경고가 켜지면 현대 컴파일러는 문제를 발견하는 데 꽤 능숙합니다. –

답변

3
  • cppcheck은 C 및 C++ 코드를 모두 검사하여 많은 오류를 찾습니다.

  • Valgrind는 런타임 분석 도구이지만 어쨌든 언급합니다. 초기화되지 않은 사용이나 누출과 같은 메모리 오류를 추적하는 데 매우 유용합니다.

  • 또한 컴파일러에있는 모든 경고를 활성화하십시오 (GCC 및 clang : -Wall -Wpedantic -Wextra). 이는 종종 유용한 정보를 나타냅니다.

  • 참고 : 그 소리는 때로는 논리 오류를 찾기 위해 GCC

  • 보다 훨씬 더 경고/오류가 발생하지만, 테스트가 필요합니다. 어쨌든 테스트가 필요합니다. 테스트되지 않은 것은 정의대로 작동하지 않을 수 있으므로 손상된 것입니다.
    Wikipedia에는 C 단위 테스트 소프트웨어 목록이 있습니다.

+0

런타임 분석이 동적 분석과 동일하지 않습니까? – user2656304

+0

그냥 다른 말씨. – dom0