word
의 모든 문자가 같은 순서로 표시되는지 확인하는 기능을 쓰려고합니다. 문자가 word
에 여러 번 나타나는 경우 s
에 적어도 여러 번 으로 표시되어야합니다. 예를 들어문자열 (C) - 두 문자열의 문자 비교
:
containsLetters2("abcdef", "aaabbb")
0을 반환 문자 "A"문자 "B"의 세 가지 모습으로 다음의 더 세 가지 모습이 없기 때문에.
이 : 내 코드에서 무슨 잘못 이해할 수없는 일
containsLetters2("axaxxabxxbxbcdef","aaabbb")
반환 :
int containsLetters2(char *s, char *word)
{
int j,i, flag;
long len_word, len_s;
len_s=strlen(s);
len_word=strlen(word);
for (i=0; i<=len_word; i++) {
flag=0;
for (j=0; j<=len_s; j++) {
if (*word==*s) {
flag=1;
word++;
break;
}
s++;
}
if (flag==0) {
break;
}
}
return flag;
}
int main() {
char string3[MAX_STRING] , string4[MAX_STRING];
printf("Enter 2 strings for containsLetters2\n");
scanf ("%s %s", string3, string4);
printf("Return value from containsLetters2 is: %d\n",containsLetters2(string3,string4));
return 0; }
그것은 루프 같은에서해야한다, 그것은 도움이 있는지 확인하기 위해 다음과 같이 코드를 변경 -> 1) -> 내가 J
user2760375
참조 관련된, 그러나 명백한 질문을위한 [Pointers to String C] (http://stackoverflow.com/questions/21004727/pointers-to-string-c). –
''aababbb '', 'aaabbb''어떻게 처리하겠습니까? 3 개의 a와 3 개의 b가 이어집니다. 중간 b가 경기를 방해합니까? –