strstr
함수를 사용하여 하위 문자열을 찾을 수 있습니다. 예를 들어 "Hello"하위 문자열을 찾을 수 있지만 "Hello"와 "Welcome"를 찾고 싶습니다. 그들 중 하나뿐 아니라 그 둘을 찾고 싶습니다. 나는 같은 단어 인 것처럼 "안녕하세요"와 "환영"에 대해 생각하고 싶습니다. 프로그램이 세상을 "hello"로 찾으면 false를 반환하고, 프로그램이 세상을 "welcome"로 찾을 수 있다면 false를 반환하지만 프로그램이 "hello"및 "welcome"이라는 단어를 찾을 수 있으면 true를 반환합니다. 내가 어떻게 할 수 있니?어떻게 두 개의 하위 문자열을 찾을 수 있습니까
int main(){
int total=0;
char *p="Hello world welcome!";
while (strstr(p,"Hello") != NULL) {
printf("%s", p); // to know the content of p
p++;
total++;
}
printf("%i", total);
getch(); // pause
}
어떻게'않는 strstr를 넣고 있었어요 'while' 루프가 당신을 돕기로되어 있나? 첫 번째 시도에서 하위 문자열을 찾거나 그렇지 않을 것입니다. 더 이상의 조치가 필요하지 않습니다. – usr2564301
@Jongware 동의합니다. while 루프 된'strstr'보다 더 특이한 점은 게시 된 응답에서도 올라가고있는 것처럼 보입니다. 나는 우리 모두가 우둔한 세상에있을 수 있다고 생각하지만, 나는 지금 당장 그것을 의심하고있다. – WhozCraig
오른쪽. 즉, 루프는 검색 문자열이 시작을 벗어난 모든 * 문자 *에 대한 발생 횟수를 증가시킵니다. 예를 들어, '환영'의 경우 12를 반환합니다. – usr2564301