-1
두 개의 구조체 배열과 중첩 for 루프가 있습니다. 두 배열에서 동일한 단어가 있지만 strcasestr이 해당 단어를 감지하지 못합니다. strcasestr을 사용하여 동일한 단어 내의 부분 문자열을 찾습니다.strcasestr가 제대로 작동하지 않습니다.
여기 내 코드의 조각이다 :
for(int itr = 0; itr < arrayItr; itr++)
{
for(int itr2 = 0; itr2 < arrayItr2; itr2++)
{
if(strcasestr(termsArraypast[itr].term, termsArrayTerms[itr2].term) > 0)
{
printf("%d %d %s\n", termsArraypast[itr].charDistance, termsArraypast[itr].termDistance, termsArraypast[itr].term);
}
}
}
은 이러한 모든 변수가 이미 내 프로그램에서 선언 된 것을 알고하십시오. 나는 방금이 부분에 몇 시간 동안 있었고 그것을 이해할 수 없다. 감사.
조건은 잘못된 것입니다. 'strcasestr' 함수는 부분 문자열의 시작 부분에 대한 포인터를 반환하거나 문자열이 발견되지 않으면 NULL을 반환합니다. 기술적으로 널이 아닌 값이 모두 0보다 큰 경우에도 'NULL'과 비교해야합니다. –
문제에 관해서, 함수에 전달한 두 문자열의 내용은 무엇입니까? –