텍스트에서 특정 단어를 찾는 함수를 작성하지만 문제가 있습니다. const char 인수를 가져 오는 strcmp_function을 사용하고 []는 cons char이 아닌 반면 문제가 있습니다. 어떻게이 프로그램에이 기능을 사용할 수 있습니다어떻게 strcmp_function을 사용할 수 있습니까
int comparision(const char sentence[ ],char *w)
{
int i, length=0, c=0, l=0;
int j,count=0;
char a[20]={'0'};
length= strlen(sentence);
l= strlen(w);
for (i=0; i<length; i++)
{
if (sentence[i] == ' '||sentence[i] == '\t'||sentence[i] == '\n')
{
for(j=0;j<l;j++)
a[j]=sentence[j+i+1];
a[j+1]='\0';
if(strcmp(a,w)==0)
count++;
}}
return count;
}
정확히 컴파일러 오류는 무엇입니까? 문자 배열과 문자 포인터는 C++에서 동일한 서명을 갖습니다. – scaryrawr
'strcmp'는 C++가 아니라 C입니다. 이전 버전과의 호환성을 위해 지원됩니다. 하지만,'std :: string'을 사용한다면 왜 문자열을 사용하지 않습니까? 안전한 RAII 기반 (새롭지 않음/삭제)이며 사전 정의 된 강력한 방법이 많이 있습니다 (Coparison 포함). 문자열을 사용하면 간단한 'string1 == string2' 코드가됩니다. – Manu343726