Files
lab5_ivec/README.txt

45 lines
2.0 KiB
Plaintext
Raw Normal View History

2022-04-16 03:26:02 +03:00
Базовые структуры данных. Вектор
--------------------------------
* Склонировать репозиторий https://timp.pw/121/lab4_ivec.git
(если репозиторий уже склонирован -- пропустить этот шаг ^_^)
В этом задании мы должны реализовать вектор для типа int.
Вектор -- это динамический массив данных, который может менять свой размер
в процессе работы.
Описание структуры данных ivector в файле vector.h
2022-04-16 03:34:45 +03:00
Вам необходимо реализовать некоторые функции в файле ./vector.c
и пройти тесты (описанные в ./vector_test.c).
Команда для сборки проекта -- make
Команда для запуска тестов -- make test
2022-04-16 03:34:45 +03:00
* Необходимо реализовать следующие функции(короткое описание функций можно
подсмотреть в vector.h):
vector_len
vector_data
vector_resize
vector_initdata
vector_set
vector_get
vector_push
vector_pop
(Опционально, но очень желательно)
vector_insert
vector_del
2022-04-16 03:34:45 +03:00
Для работы вам могут понадобится следующие библиотечные функции:
2022-04-16 03:34:45 +03:00
* malloc(size_t size) -- функция, динамически выделяющая size байт и возвращающая
указатель на выделенный кусок
* realloc(void *ptr, size_t size) -- функция изменяющая размер выделенного куска памяти
на вход принимает указатель на предыдущий выделенный кусок.
возвращает укзаатель на заново выделенную память.
Все предыдущие данные в ptr остаются без изменений