我将 3 个字符串传递给函数,并且需要查看字符串以找到出现在所有三个字符串中的单词。字符串只是没有空格或插符的字母。我编写了一个代码来遍历 2 个字符串,但由于某种原因它不起作用。任何帮助表示赞赏。
char* najduljiPodniz(char* niz1, char* niz2, char* niz3)
{
int i,j,t1,br=0;
for(i=0;i<strlen(niz1);i++)
{
for(j=0;j<strlen(niz2);j++)
{
if(niz1[i]==niz2[j])
{
t1=i;
br++;
while(niz1[i]==niz2[j])
{
br++;
i++;
j++;
}
}
else break;
}
}
char *podniz=(char*)malloc(sizeof(char)*br+1);
for(i=0,j=t1;j<br;i++,j++)
podniz[i]=niz1[j];
for(i=0;i<br;i++)
printf("%s",podniz[i]);
return 0;
}
为了澄清:字符串的示例是:“afsdmartiangknrhg”。所以,随机字母和字符串中的某处有一个实际的单词。在这个例子中是“火星人”。其他 2 个字符串也包含单词“martian”。martian 这个词对我来说是“未知的”,所以我无法检查字符串中的实际单词。