From 20dc8e0afb21490b1b7ee2bfa49e184bc056fef9 Mon Sep 17 00:00:00 2001 From: Tanguy MAZE Date: Tue, 12 Jun 2018 01:52:39 +0200 Subject: [PATCH 1/6] protected ft_lstdel && changed -g flag --- Makefile | 4 ++-- ft_lstdel.c | 11 +++++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 3948f37..5b995ea 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: tmaze +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2018/04/07 12:47:06 by tmaze #+# #+# # -# Updated: 2018/06/07 16:59:16 by tmaze ### ########.fr # +# Updated: 2018/06/12 01:46:55 by tmaze ### ########.fr # # # #******************************************************************************# @@ -32,7 +32,7 @@ $(NAME): $(OBJS) ar rcs $(NAME) $(OBJS) %.o: %.c libft.h - $(CC) $(CCFLAGS) $(CCSTD) $(INCLS) -g -c $< -o $@ + $(CC) $(CCFLAGS) $(CCSTD) $(INCLS) -c $< -o $@ clean: rm -f $(OBJS) diff --git a/ft_lstdel.c b/ft_lstdel.c index d80380c..c5e6cc9 100644 --- a/ft_lstdel.c +++ b/ft_lstdel.c @@ -6,7 +6,7 @@ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2018/04/08 17:19:32 by tmaze #+# #+# */ -/* Updated: 2018/04/19 14:36:46 by tmaze ### ########.fr */ +/* Updated: 2018/06/12 00:33:45 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,7 +14,10 @@ void ft_lstdel(t_list **alst, void (*del)(void*, size_t)) { - if ((*alst)->next != NULL) - ft_lstdel(&((*alst)->next), del); - ft_lstdelone(alst, del); + if (*alst) + { + if ((*alst)->next != NULL) + ft_lstdel(&((*alst)->next), del); + ft_lstdelone(alst, del); + } } From f88ff8a6008f2bb3b9a8b08645be8f6e614b38de Mon Sep 17 00:00:00 2001 From: Tanguy MAZE Date: Wed, 25 Jul 2018 18:49:06 +0200 Subject: [PATCH 2/6] Added: - function for deleting word tables - function for putting on scrren x chars of char* - function for getting number of chars in int --- Makefile | 4 ++-- ft_del_words_tables.c | 24 ++++++++++++++++++++++++ ft_nbrlen.c | 30 ++++++++++++++++++++++++++++++ ft_putstrn.c | 24 ++++++++++++++++++++++++ libft.h | 7 ++++++- 5 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 ft_del_words_tables.c create mode 100644 ft_nbrlen.c create mode 100644 ft_putstrn.c diff --git a/Makefile b/Makefile index 5b995ea..9025099 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: tmaze +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2018/04/07 12:47:06 by tmaze #+# #+# # -# Updated: 2018/06/12 01:46:55 by tmaze ### ########.fr # +# Updated: 2018/07/25 18:18:55 by tmaze ### ########.fr # # # #******************************************************************************# @@ -19,7 +19,7 @@ NAME = libft.a SRCS = ft_memset.c ft_bzero.c ft_memcpy.c ft_memccpy.c ft_memmove.c ft_memchr.c ft_memcmp.c ft_strlen.c ft_strdup.c ft_strcpy.c ft_strncpy.c ft_strcat.c ft_strncat.c ft_strlcat.c ft_strchr.c ft_strrchr.c ft_strstr.c ft_strnstr.c ft_strcmp.c ft_strncmp.c ft_atoi.c ft_isalpha.c ft_isdigit.c ft_isalnum.c ft_isascii.c ft_isprint.c ft_toupper.c ft_tolower.c \ ft_memalloc.c ft_memdel.c ft_strnew.c ft_strdel.c ft_strclr.c ft_striter.c ft_striteri.c ft_strmap.c ft_strmapi.c ft_strequ.c ft_strnequ.c ft_strsub.c ft_strjoin.c ft_strtrim.c ft_strsplit.c ft_itoa.c ft_putchar.c ft_putstr.c ft_putendl.c ft_putnbr.c ft_putchar_fd.c ft_putstr_fd.c ft_putendl_fd.c ft_putnbr_fd.c\ ft_lstnew.c ft_lstdelone.c ft_lstdel.c ft_lstadd.c ft_lstiter.c ft_lstmap.c \ - ft_isupper.c ft_islower.c ft_str_is_alpha.c ft_str_is_lowercase.c ft_str_is_numeric.c ft_str_is_printable.c ft_str_is_uppercase.c ft_strcapitalize.c ft_strlcpy.c ft_strlowcase.c ft_strupcase.c ft_lstsize.c ft_lstgetat.c ft_lstgetlast.c ft_sort_params.c ft_print_words_tables.c ft_lstaddend.c ft_strndup.c ft_abs.c ft_strnchr.c ft_strrnchr.c get_next_line.c + ft_isupper.c ft_islower.c ft_str_is_alpha.c ft_str_is_lowercase.c ft_str_is_numeric.c ft_str_is_printable.c ft_str_is_uppercase.c ft_strcapitalize.c ft_strlcpy.c ft_strlowcase.c ft_strupcase.c ft_lstsize.c ft_lstgetat.c ft_lstgetlast.c ft_sort_params.c ft_print_words_tables.c ft_lstaddend.c ft_strndup.c ft_abs.c ft_strnchr.c ft_strrnchr.c get_next_line.c ft_del_words_tables.c ft_putstrn.c ft_nbrlen.c OBJS = $(SRCS:.c=.o) INCLS = -I. diff --git a/ft_del_words_tables.c b/ft_del_words_tables.c new file mode 100644 index 0000000..86cee0f --- /dev/null +++ b/ft_del_words_tables.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_del_words_tables.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/25 15:13:09 by tmaze #+# #+# */ +/* Updated: 2018/07/25 16:03:19 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_del_words_tables(char ***word_table) +{ + int i; + + i = -1; + while ((*word_table)[++i]) + ft_strdel(&(*word_table)[i]); + ft_memdel((void**)word_table); + *word_table = NULL; +} diff --git a/ft_nbrlen.c b/ft_nbrlen.c new file mode 100644 index 0000000..9351379 --- /dev/null +++ b/ft_nbrlen.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_nbrlen.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/25 17:45:29 by tmaze #+# #+# */ +/* Updated: 2018/07/25 18:20:22 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +size_t ft_nbrlen(int nb) +{ + size_t nb_len; + + nb_len = 0; + if (nb <= 0) + nb_len++; + if (nb < 0) + nb *= -1; + while (nb > 0) + { + nb /= 10; + nb_len++; + } + return (nb_len); +} diff --git a/ft_putstrn.c b/ft_putstrn.c new file mode 100644 index 0000000..8cdab05 --- /dev/null +++ b/ft_putstrn.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putstrn.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/25 16:20:52 by tmaze #+# #+# */ +/* Updated: 2018/07/25 16:24:41 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putstrn(char const *s, size_t nb) +{ + size_t strlen; + + if (s != NULL) + { + strlen = ft_strlen(s); + write(1, s, (nb < strlen) ? nb : strlen); + } +} diff --git a/libft.h b/libft.h index 09f95cf..7e91568 100644 --- a/libft.h +++ b/libft.h @@ -6,7 +6,7 @@ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2018/04/08 00:12:36 by tmaze #+# #+# */ -/* Updated: 2018/06/07 16:54:31 by tmaze ### ########.fr */ +/* Updated: 2018/07/25 18:18:40 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ @@ -139,4 +139,9 @@ char *ft_strnchr(const char *s, int c, int n); char *ft_strrnchr(const char *s, int c, int n); int get_next_line(const int fd, char **line); + +void ft_del_words_tables(char ***word_table); +void ft_putstrn(char const *s, size_t nb); +size_t ft_nbrlen(int nb); + #endif From 8107a8aaf37ad9ad0d6579b760ceb0dd5e7c9839 Mon Sep 17 00:00:00 2001 From: Tanguy MAZE Date: Tue, 31 Jul 2018 16:34:04 +0200 Subject: [PATCH 3/6] added functions to print strings and numbers with padding of choice --- ft_putnbrpad.c | 24 ++++++++++++++++++++++++ ft_putstrpad.c | 24 ++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 ft_putnbrpad.c create mode 100644 ft_putstrpad.c diff --git a/ft_putnbrpad.c b/ft_putnbrpad.c new file mode 100644 index 0000000..efe5348 --- /dev/null +++ b/ft_putnbrpad.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putnbrpad.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/31 13:51:17 by tmaze #+# #+# */ +/* Updated: 2018/07/31 14:04:43 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putnbrpad(int nbr, size_t size, char pad, char align) +{ + if (align == 'd') + while (size-- != 0) + ft_putchar(pad); + ft_putnbr(nbr); + if (align == 'g') + while (size-- != 0) + ft_putchar(pad); +} diff --git a/ft_putstrpad.c b/ft_putstrpad.c new file mode 100644 index 0000000..1f82896 --- /dev/null +++ b/ft_putstrpad.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putstrpad.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/31 13:36:56 by tmaze #+# #+# */ +/* Updated: 2018/07/31 14:05:41 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putstrpad(char *str, size_t size, char pad, char align) +{ + if (align == 'd') + while (size-- != 0) + ft_putchar(pad); + ft_putstr(str); + if (align == 'g') + while (size-- != 0) + ft_putchar(pad); +} From 017e049ef56589e9a6ca4050df45a39ec9ef83fe Mon Sep 17 00:00:00 2001 From: Tanguy MAZE Date: Tue, 31 Jul 2018 16:34:04 +0200 Subject: [PATCH 4/6] added functions to print strings and numbers with padding of choice --- Makefile | 4 ++-- ft_putnbrpad.c | 24 ++++++++++++++++++++++++ ft_putstrpad.c | 24 ++++++++++++++++++++++++ libft.h | 4 +++- 4 files changed, 53 insertions(+), 3 deletions(-) create mode 100644 ft_putnbrpad.c create mode 100644 ft_putstrpad.c diff --git a/Makefile b/Makefile index 9025099..8d98bcc 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: tmaze +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2018/04/07 12:47:06 by tmaze #+# #+# # -# Updated: 2018/07/25 18:18:55 by tmaze ### ########.fr # +# Updated: 2018/07/31 13:52:29 by tmaze ### ########.fr # # # #******************************************************************************# @@ -19,7 +19,7 @@ NAME = libft.a SRCS = ft_memset.c ft_bzero.c ft_memcpy.c ft_memccpy.c ft_memmove.c ft_memchr.c ft_memcmp.c ft_strlen.c ft_strdup.c ft_strcpy.c ft_strncpy.c ft_strcat.c ft_strncat.c ft_strlcat.c ft_strchr.c ft_strrchr.c ft_strstr.c ft_strnstr.c ft_strcmp.c ft_strncmp.c ft_atoi.c ft_isalpha.c ft_isdigit.c ft_isalnum.c ft_isascii.c ft_isprint.c ft_toupper.c ft_tolower.c \ ft_memalloc.c ft_memdel.c ft_strnew.c ft_strdel.c ft_strclr.c ft_striter.c ft_striteri.c ft_strmap.c ft_strmapi.c ft_strequ.c ft_strnequ.c ft_strsub.c ft_strjoin.c ft_strtrim.c ft_strsplit.c ft_itoa.c ft_putchar.c ft_putstr.c ft_putendl.c ft_putnbr.c ft_putchar_fd.c ft_putstr_fd.c ft_putendl_fd.c ft_putnbr_fd.c\ ft_lstnew.c ft_lstdelone.c ft_lstdel.c ft_lstadd.c ft_lstiter.c ft_lstmap.c \ - ft_isupper.c ft_islower.c ft_str_is_alpha.c ft_str_is_lowercase.c ft_str_is_numeric.c ft_str_is_printable.c ft_str_is_uppercase.c ft_strcapitalize.c ft_strlcpy.c ft_strlowcase.c ft_strupcase.c ft_lstsize.c ft_lstgetat.c ft_lstgetlast.c ft_sort_params.c ft_print_words_tables.c ft_lstaddend.c ft_strndup.c ft_abs.c ft_strnchr.c ft_strrnchr.c get_next_line.c ft_del_words_tables.c ft_putstrn.c ft_nbrlen.c + ft_isupper.c ft_islower.c ft_str_is_alpha.c ft_str_is_lowercase.c ft_str_is_numeric.c ft_str_is_printable.c ft_str_is_uppercase.c ft_strcapitalize.c ft_strlcpy.c ft_strlowcase.c ft_strupcase.c ft_lstsize.c ft_lstgetat.c ft_lstgetlast.c ft_sort_params.c ft_print_words_tables.c ft_lstaddend.c ft_strndup.c ft_abs.c ft_strnchr.c ft_strrnchr.c get_next_line.c ft_del_words_tables.c ft_putstrn.c ft_nbrlen.c ft_putstrpad.c ft_putnbrpad.c OBJS = $(SRCS:.c=.o) INCLS = -I. diff --git a/ft_putnbrpad.c b/ft_putnbrpad.c new file mode 100644 index 0000000..efe5348 --- /dev/null +++ b/ft_putnbrpad.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putnbrpad.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/31 13:51:17 by tmaze #+# #+# */ +/* Updated: 2018/07/31 14:04:43 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putnbrpad(int nbr, size_t size, char pad, char align) +{ + if (align == 'd') + while (size-- != 0) + ft_putchar(pad); + ft_putnbr(nbr); + if (align == 'g') + while (size-- != 0) + ft_putchar(pad); +} diff --git a/ft_putstrpad.c b/ft_putstrpad.c new file mode 100644 index 0000000..1f82896 --- /dev/null +++ b/ft_putstrpad.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putstrpad.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/07/31 13:36:56 by tmaze #+# #+# */ +/* Updated: 2018/07/31 14:05:41 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putstrpad(char *str, size_t size, char pad, char align) +{ + if (align == 'd') + while (size-- != 0) + ft_putchar(pad); + ft_putstr(str); + if (align == 'g') + while (size-- != 0) + ft_putchar(pad); +} diff --git a/libft.h b/libft.h index 7e91568..4324eb1 100644 --- a/libft.h +++ b/libft.h @@ -6,7 +6,7 @@ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2018/04/08 00:12:36 by tmaze #+# #+# */ -/* Updated: 2018/07/25 18:18:40 by tmaze ### ########.fr */ +/* Updated: 2018/07/31 13:52:16 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ @@ -143,5 +143,7 @@ int get_next_line(const int fd, char **line); void ft_del_words_tables(char ***word_table); void ft_putstrn(char const *s, size_t nb); size_t ft_nbrlen(int nb); +void ft_putstrpad(char *str, size_t size, char pad, char align); +void ft_putnbrpad(int nbr, size_t size, char pad, char align); #endif From 6de718b531ee43c0f50213357dc61aa9734a2f6f Mon Sep 17 00:00:00 2001 From: vagrant Date: Wed, 5 Sep 2018 18:26:04 +0000 Subject: [PATCH 5/6] added color codes --- libft.h | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/libft.h b/libft.h index 4324eb1..67fcaf4 100644 --- a/libft.h +++ b/libft.h @@ -6,7 +6,7 @@ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2018/04/08 00:12:36 by tmaze #+# #+# */ -/* Updated: 2018/07/31 13:52:16 by tmaze ### ########.fr */ +/* Updated: 2018/09/04 19:42:41 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,6 +17,27 @@ # include # include +# define FT_RESET "\xb1[0m" +# define FT_BOLD "\xb1[1m" + +# define FT_COLOR_BLACK "\xb1[30m" +# define FT_COLOR_RED "\xb1[31m" +# define FT_COLOR_GREEN "\xb1[32m" +# define FT_COLOR_YELLOW "\xb1[33m" +# define FT_COLOR_BLUE "\xb1[34m" +# define FT_COLOR_MAGENTA "\xb1[35m" +# define FT_COLOR_CYAN "\xb1[36m" +# define FT_COLOR_WHITE "\xb1[37m" + +# define FT_COLOR_BG_CK "\xb1[40m" +# define FT_COLOR_BG_RED "\xb1[41m" +# define FT_COLOR_BG_GREEN "\xb1[42m" +# define FT_COLOR_BG_YELLOW "\xb1[43m" +# define FT_COLOR_BG_BLUE "\xb1[44m" +# define FT_COLOR_BG_MAGENTA "\xb1[45m" +# define FT_COLOR_BG_CYAN "\xb1[46m" +# define FT_COLOR_BG_WHITE "\xb1[47m" + /* ** définition type t_list */ From 82a203b2c7dddc5e2d7f7f10a7284206220d9a7a Mon Sep 17 00:00:00 2001 From: tmaze Date: Sat, 8 Sep 2018 22:01:00 +0000 Subject: [PATCH 6/6] corrected color codes --- libft.h | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/libft.h b/libft.h index 67fcaf4..4075fa1 100644 --- a/libft.h +++ b/libft.h @@ -6,7 +6,7 @@ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2018/04/08 00:12:36 by tmaze #+# #+# */ -/* Updated: 2018/09/04 19:42:41 by tmaze ### ########.fr */ +/* Updated: 2018/09/05 20:59:53 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,26 +17,26 @@ # include # include -# define FT_RESET "\xb1[0m" -# define FT_BOLD "\xb1[1m" +# define FT_RESET "\x1b[0m" +# define FT_BOLD "\x1b[1m" -# define FT_COLOR_BLACK "\xb1[30m" -# define FT_COLOR_RED "\xb1[31m" -# define FT_COLOR_GREEN "\xb1[32m" -# define FT_COLOR_YELLOW "\xb1[33m" -# define FT_COLOR_BLUE "\xb1[34m" -# define FT_COLOR_MAGENTA "\xb1[35m" -# define FT_COLOR_CYAN "\xb1[36m" -# define FT_COLOR_WHITE "\xb1[37m" +# define FT_COLOR_BLACK "\x1b[30m" +# define FT_COLOR_RED "\x1b[31m" +# define FT_COLOR_GREEN "\x1b[32m" +# define FT_COLOR_YELLOW "\x1b[33m" +# define FT_COLOR_BLUE "\x1b[34m" +# define FT_COLOR_MAGENTA "\x1b[35m" +# define FT_COLOR_CYAN "\x1b[36m" +# define FT_COLOR_WHITE "\x1b[37m" -# define FT_COLOR_BG_CK "\xb1[40m" -# define FT_COLOR_BG_RED "\xb1[41m" -# define FT_COLOR_BG_GREEN "\xb1[42m" -# define FT_COLOR_BG_YELLOW "\xb1[43m" -# define FT_COLOR_BG_BLUE "\xb1[44m" -# define FT_COLOR_BG_MAGENTA "\xb1[45m" -# define FT_COLOR_BG_CYAN "\xb1[46m" -# define FT_COLOR_BG_WHITE "\xb1[47m" +# define FT_COLOR_BG_BLACK "\x1b[40m" +# define FT_COLOR_BG_RED "\x1b[41m" +# define FT_COLOR_BG_GREEN "\x1b[42m" +# define FT_COLOR_BG_YELLOW "\x1b[43m" +# define FT_COLOR_BG_BLUE "\x1b[44m" +# define FT_COLOR_BG_MAGENTA "\x1b[45m" +# define FT_COLOR_BG_CYAN "\x1b[46m" +# define FT_COLOR_BG_WHITE "\x1b[47m" /* ** définition type t_list