• Каково назначение данной функции для односвязного списка?

    @TheCalligrapher
    Функция добавляет новый элемент в начало односвязного списка и, соответственно, обновляет указатель на начало списка. Именно обновление указателя на начало списка и делается через присваивание *s = el.

    Это функция также может быть использована для вставки элемента в середину списка, если в качестве параметра s будет передаваться указатель на поле next предыдущего элемента. (Другими словами, вставка элемента в середину списка - это ни что иное, что вставка элемента в начало правого подсписка, начинающегося в точке вставки.)

    P.S. Функция написана стилистически кривовато: делает ненужное приведение типа на результате malloc и не пользуется очевидной возможностью выполнить инициализацию переменной el (вместо присваивания).
    Ответ написан
    2 комментария