Прокомментировать код с strstr - C (СИ)
Формулировка задачи:
вот часть кода
Объясните плз что тут происходит, поподробнее о функции strstr
scanf("%s",&name);
while (poisk4!=NULL){
if (strstr(poisk4->name,name))
break;
else
poisk4=poisk4->previous;
}Решение задачи: «Прокомментировать код с strstr»
textual
Листинг программы
if (strstr(poisk->name,name)) // если name входит в строку poisk->name break; // выход из цыкла else // иначе poisk=poisk->previous; // здесь непонятно!!!
Объяснение кода листинга программы
В представленном коде выполняется поиск строки name в строке poisk->name. Если name найдена в poisk->name, то цикл прерывается и выполняется переход к следующей итерации. Если name не найдена, то выполняется переход к предыдущему элементу списка. Номера элементов списка соответствуют их порядковым номерам в цикле.
Вот список действий:
- Проверка наличия строки
nameвpoisk->nameс помощью функции strstr. - Если
nameнайдена, то выход из цикла. - Если
nameне найдена, то переход к предыдущему элементу спискаpoisk.