이 문제를 해결하는 방법에 대한 정보를 얻으려면 문제가 있습니다.C로 하위 문자열 찾기
이 함수는 원본에서 toFind의 첫 번째 항목을 찾고 원본의 toFind 부분 문자열의 첫 번째 요소 인덱스를 나타내는 정수를 반환합니다. 예를 들어 toFind가 'man'이고 원본이 'superman'인 경우 함수는 'spiderman'의 'man'의 시작 부분이 7이기 때문에 함수는 6을 반환합니다. 함수가 부분 문자열을 찾지 못하면 -1을 반환해야합니다. 내가 지금까지 무엇을 가지고
는 :
{
printf("%s\n%s\n", original, toFind);
int j, i, k, start, length;
i = 0;
j = 0;
k = 0;
length = (int)strlen(original);
start = 0;
printf("%d\n", length);
for (i = 0; i < strlen(toFind); ++i)
{
while (j != (length - 1))
{
printf("j: %d\n", j);
if (toFind[i] == original[j])
{
while (k != strlen(toFind))
{
if (toFind[i + k] == original[j + k])
{
printf("k: %d\n", k);
k = k + 1;
start = j;
}
else
{
k = 0;
}
}
}
else
{
++j;
}
}
}
printf("%d\n", start);
if (k == strlen(toFind))
{
printf("Word found\n");
return start;
}
else
{
printf("Word not found\n");
return -1;
}
return 0;
* 특정 * 문제를 설명해야합니다. 당신이 가지고있는 것에 무엇이 잘못 되었습니까? 원하는대로 작동하지 않는 이유는 무엇입니까? – kaylum
'strstr' 사용 ... – BLUEPIXY