Функция strstr и указатели - C (СИ)
Формулировка задачи:
Написал свою версию фунции strstr из стандартной библиотеки string.h (не спрашивайте зачем)
В некоторых компиляторах функция работает успешно, однако gcc выдает вот такой варнинг:
char *strstr_(const char *string1, const char *string2) { int i, j, n=strlen_(string2); for(i=0; string1[i]; i++, j++) { if (string1[i]!=string2[j]) j=-1; if (j==n) return string1+i-n; } return 0; }
warning: return discards qualifiers from pointer target type
Я так понял, что ему не нравится возвращаемое значение. Вопрос - почему?Решение задачи: «Функция strstr и указатели»
textual
Листинг программы
char *strstr_(const char *string1, const char *string2) { int i, j, n = strlen_(string2); for (i = 0, j = 0; string1[i]; i++, j++) { if (string1[i] != string2[j]) j = -1; if (j == n-1) return (char *)string1 + i - n+1; } return NULL; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д