나는 유사성을위한 소스 코드를 비교할 수있는 도구를 찾고 있습니다.유사 코드 검출기
우리는 방대한 양의 거짓 긍정 (false positive)을 갖고있는 매우 사소한 시스템을 가지고 있으며 실제 긍정은 쉽게 그 안에 묻힐 수 있습니다.
내 요구 사항은 다음과 같습니다 오탐 (false positive)의
- 비교적 적은 양의
- 좋은 검출 율 단지 하나의 값 보다 더 복잡한 출력 이상적으로
- (예 이들은 서로 예정) C (C99) 및 C에 사용할 수
- ++ (C++ 03 최적 C++ 11)
- 여전히 공동 용
- 가능한 유지 비 대화식 모드에서 서로
- 사용할 수에 대한 두 개의 소스 파일을 mparing
편집 :
다음 두 코드 조각이 동일하고 같은 감지해야 혼란을 방지하려면 :
for (int i = 0; i < 10; i++) { bla; }
int i; while (i < 10) { bla; i++; }
여기에 같은 :
int x = 10; y = x + 5;
int a = 10; y = a + 5;
diff는 사용자의 요구 사항 중 일부를 만족합니까? –
@HighPerformanceMark LOL, 아니요. –
구문론이 아닌 2 개의 코드의 의미 상 유사성을 비교하는 도구를 원하는 것처럼 보입니다. 나는 이것이 미해결 된 문제이고 그것이 당신을 위해 만족스러운 해결책을 찾기 위해 애 쓰고 있다고 의심합니다. 나는 서면으로, 당신의 원래 질문이 나를 잘못 인도 한 것처럼 많은 독자를 오도 할 것이라고 생각합니다. 나는 또한 여러분이 관심있는 비교가 어떤 종류인지 명확히 진술해야한다고 생각합니다. –