aboutsummaryrefslogtreecommitdiff
path: root/c12/ex04
diff options
context:
space:
mode:
Diffstat (limited to 'c12/ex04')
-rw-r--r--c12/ex04/ft_list.h24
-rw-r--r--c12/ex04/ft_list_push_back.c25
2 files changed, 49 insertions, 0 deletions
diff --git a/c12/ex04/ft_list.h b/c12/ex04/ft_list.h
new file mode 100644
index 0000000..8b736b4
--- /dev/null
+++ b/c12/ex04/ft_list.h
@@ -0,0 +1,24 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* ft_list.h :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2019/07/09 14:33:17 by cacharle #+# #+# */
+/* Updated: 2019/07/09 14:42:55 by cacharle ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#ifndef FT_LIST_H
+#define FT_LIST_H
+
+typedef struct s_list
+{
+ struct s_list *next;
+ void *data;
+} t_list;
+
+t_list *ft_create_elem(void *data);
+
+#endif
diff --git a/c12/ex04/ft_list_push_back.c b/c12/ex04/ft_list_push_back.c
new file mode 100644
index 0000000..cfde9a8
--- /dev/null
+++ b/c12/ex04/ft_list_push_back.c
@@ -0,0 +1,25 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* ft_list_push_back.c :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2019/07/09 17:18:46 by cacharle #+# #+# */
+/* Updated: 2019/07/09 17:18:48 by cacharle ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include "ft_list.h"
+
+void ft_list_push_back(t_list **begin_list, void *data)
+{
+ if (*begin_list)
+ while (*begin_list->next)
+ *begin_list = *begin_list->next;
+ elem = ft_create_elem(data);
+ if (*begin_list)
+ *begin_list->next = elem;
+ else
+ *begin_list = elem;
+}