С использованием функции найти все вхождения подстроки в строке - C (СИ)
Формулировка задачи:
Всем логимыслящим Большой Привет!
Помогите меня избавить от страданий написать программу...Лайками обеспечу!
Функция находит в строке заданную подстроку и возвращает указатель на нее. С использованием функции найти все вхождения подстроки в строке.
Решение задачи: «С использованием функции найти все вхождения подстроки в строке»
textual
Листинг программы
- char *strstr(char *s1,char *s2)
- {
- char *p,*q,*t;
- p=s1;
- while(*p) //продолжать пока не закончится первая строка
- {
- q=s2; //начало второй строки
- for(;*p&&*p!=*q;p++); //поиск первого символа второй строки в первой строке
- if(!*p) return NULL; //Если первая строка закончилась, то вторая не входит
- t=p; //запомнить начало возможного вхождения
- for(;*p&&*q&&*p==*q;p++,q++); //проверка вхождения
- if(!*q)return t; //если вторая входит в первую, вернуть указатель вхождения
- if(!*p) return NULL; ////Если первая строка закончилась, то вторая не входит
- p=t+1; //продолжить поиск вхождения
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д