1
0
forked from 131/lab6_list

форматирование ридмихи

This commit is contained in:
dzruyk
2023-04-22 02:24:04 +03:00
parent 3c46bd19d6
commit daae42bfd8

View File

@@ -3,7 +3,7 @@
* Склонировать репозиторий https://timp.pw/121/lab6_list.git
В этом задании необходимо дописать функции для работы с двусвязным списком.
Двусвязный список -- структура данных, которая имеет вид
Двусвязный список -- структура данных, которая имеет вид:
```c
struct list_node {
@@ -12,19 +12,17 @@ struct list_node {
}
```
Где поля **next** и **prev** указывают на следующий и предыдущий элементы списка.
При этом если предыдущего или следующего элемента списка не существует, указатель должен быть равен **NULL**
При этом если предыдущего или следующего элемента списка не существует, указатель должен быть равен **NULL**.
Описание структуры данных в файле list.h
Описание структуры данных в файле `list.h`
Вам необходимо реализовать некоторые функции в файле ./list.c
и пройти тесты (описанные в ./list_test.c).
Команда для сборки проекта -- make
Команда для запуска тестов -- make test
Вам необходимо реализовать некоторые функции в файле `./list.c`
и пройти тесты (описанные в `./list_test.c`).
* Необходимо реализовать следующие функции(короткое описание функций можно
подсмотреть в list.h):
подсмотреть в `list.h`):
```
list_clear
list_push_front
list_len
@@ -40,13 +38,18 @@ struct list_node {
Эту функцию проверяет тест test_list_remove
list_reverse
Эту функцию проверяет тест test_list_reverse
```
## Дополнительная информация
* Команда для сборки проекта -- **make**
* Команда для запуска тестов -- **make test**
Для работы вам могут понадобится следующие библиотечные функции:
* malloc(size_t size) -- функция, динамически выделяющая size байт и возвращающая
* `malloc(size_t size)` -- функция, динамически выделяющая size байт и возвращающая
указатель на выделенный кусок
* realloc(void *ptr, size_t size) -- функция изменяющая размер выделенного куска памяти
* `realloc(void *ptr, size_t size)` -- функция изменяющая размер выделенного куска памяти
на вход принимает указатель на предыдущий выделенный кусок.
возвращает укзаатель на заново выделенную память.
Все предыдущие данные в ptr остаются без изменений