libft
Loading...
Searching...
No Matches
vec_remove.c
Go to the documentation of this file.
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* vec_remove.c :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: tspoof <tspoof@student.hive.fi> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2023/06/03 20:59:13 by tspoof #+# #+# */
9/* Updated: 2023/06/05 14:29:45 by tspoof ### ########.fr */
10/* */
11/* ************************************************************************** */
12
13#include "vec.h"
14
15int vec_remove(t_vec *src, size_t index)
16{
17 unsigned char *start;
18
19 start = src->memory + (index * src->elem_size);
20 start = ft_memmove(start,
21 start + src->elem_size,
22 (src->len - index - 1) * src->elem_size);
23 src->len--;
24 return (0);
25}
void * ft_memmove(void *dst, const void *src, size_t len)
Copy memory area.
Definition ft_memmove.c:15
Definition vec.h:20
size_t len
Definition vec.h:24
unsigned char * memory
Definition vec.h:21
size_t elem_size
Definition vec.h:22
int vec_remove(t_vec *src, size_t index)
Removes item at index.
Definition vec_remove.c:15