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