Немного предыстории для этого вопроса, у меня есть связанный список с именами, в котором я не хочу находить вводимое пользователем имя. Для удобства я копирую имя (если оно найдено) в тот же буфер, например так:
aux = filtCountriesHead; //head of my list
while (aux != NULL){
if (strstr(aux->data.name, buffer) != NULL){
strcpy(buffer, aux->data.name);
foundName = 1;
break;
}
aux = aux->next; //this is skipped for some reason
}
Когда я запускаю это, он входит в бесконечный цикл, потому что он не выполняет следующую строку aux = aux->, которую я нашел, запустив в отладчике. Он не выполняет ничего в «если» (и даже если бы он выполнялся, «разрыв;» заставлял бы его выходить из цикла, а не запускать его снова), так что у меня нет идей. У кого-нибудь есть объяснение?
Заранее спасибо!