Это освобождение связанного списка
ну если всё хорошо заиничено прежде, то должно
в current содержится адрес следующего элемента(итерация) в списке. Вспоминаем конструкцию while, что после каждой итерации идёт проверка условия
не должен, это говнокод и уб
сначала prev = current; потом current = current->next; потом free(prev);
https://t.me/lame_c/106706
при таком раскладе ты обращаешься к высвобожденной памяти и почти гарантированно получаешь сегфолт
это не важно. важно одно: фактически (упрощенно) free(myptr); something = *myptr;
если это не пример undefined behavior или ошибок программиста, то сожги эту книгу и плюнь автору в лицо
да, разыменование, вижу
если конечно можно так писать
а это случаем не Прата?
А кто автор этой книги? Впрочем, подозрение, что переводчики накосячили
он самый. Прата.
Именно он
Я понимаю это. Просто хотел показать чтобы те кто читают обратили внимание
Вообще не гарантированно, я бы даже сказал крайне мал шанс в данном случае получить сегфолт. Это просто уб и всё на этом.
Обсуждают сегодня