Edited to be used on other project
This commit is contained in:
parent
e1d33272f7
commit
707e9a4177
9 changed files with 260 additions and 6 deletions
13
Makefile
13
Makefile
|
|
@ -6,14 +6,14 @@
|
||||||
# By: rparodi <marvin@42.fr> +#+ +:+ +#+ #
|
# By: rparodi <marvin@42.fr> +#+ +:+ +#+ #
|
||||||
# +#+#+#+#+#+ +#+ #
|
# +#+#+#+#+#+ +#+ #
|
||||||
# Created: 2023/11/12 11:05:05 by rparodi #+# #+# #
|
# Created: 2023/11/12 11:05:05 by rparodi #+# #+# #
|
||||||
# Updated: 2024/10/31 16:15:59 by rparodi ### ########.fr #
|
# Updated: 2024/10/31 17:22:49 by rparodi ### ########.fr #
|
||||||
# #
|
# #
|
||||||
# **************************************************************************** #
|
# **************************************************************************** #
|
||||||
|
|
||||||
# Variables
|
# Variables
|
||||||
|
|
||||||
# Name
|
# Name
|
||||||
NAME=libft.a
|
NAME = libft.a
|
||||||
|
|
||||||
# Commands
|
# Commands
|
||||||
CC = cc
|
CC = cc
|
||||||
|
|
@ -30,7 +30,7 @@ CFLAGS += -g3 -MMD
|
||||||
LDFLAGS = -L.
|
LDFLAGS = -L.
|
||||||
LDLIBS = -lft
|
LDLIBS = -lft
|
||||||
|
|
||||||
INCLUDES = ./includes/
|
INCLUDES = ./includes/libft/
|
||||||
|
|
||||||
SRC = char/ft_isdigit.c \
|
SRC = char/ft_isdigit.c \
|
||||||
char/ft_isalnum.c \
|
char/ft_isalnum.c \
|
||||||
|
|
@ -66,6 +66,7 @@ SRC = char/ft_isdigit.c \
|
||||||
print/ft_putstr_fd.c \
|
print/ft_putstr_fd.c \
|
||||||
str/ft_split.c \
|
str/ft_split.c \
|
||||||
str/ft_strchr.c \
|
str/ft_strchr.c \
|
||||||
|
str/ft_strcmp.c \
|
||||||
str/ft_strcpy.c \
|
str/ft_strcpy.c \
|
||||||
str/ft_strdup.c \
|
str/ft_strdup.c \
|
||||||
str/ft_striteri.c \
|
str/ft_striteri.c \
|
||||||
|
|
@ -81,7 +82,7 @@ SRC = char/ft_isdigit.c \
|
||||||
str/ft_substr.c
|
str/ft_substr.c
|
||||||
|
|
||||||
# Objects
|
# Objects
|
||||||
OBJDIRNAME = ./objects
|
OBJDIRNAME = ./build
|
||||||
OBJ = $(addprefix $(OBJDIRNAME)/,$(SRC:.c=.o))
|
OBJ = $(addprefix $(OBJDIRNAME)/,$(SRC:.c=.o))
|
||||||
|
|
||||||
# Colors
|
# Colors
|
||||||
|
|
@ -96,11 +97,12 @@ END = \033[0m
|
||||||
# All (make all)
|
# All (make all)
|
||||||
all: header $(NAME) footer
|
all: header $(NAME) footer
|
||||||
|
|
||||||
|
lib: $(NAME)
|
||||||
|
|
||||||
# Bonus (make bonus)
|
# Bonus (make bonus)
|
||||||
bonus: header $(OBJ) $(LIB_OBJ) footer
|
bonus: header $(OBJ) $(LIB_OBJ) footer
|
||||||
@mkdir -p $(OBJDIRNAME)
|
@mkdir -p $(OBJDIRNAME)
|
||||||
@mkdir -p $(OBJDIRNAME)/$(SRCDIRNAME)
|
@mkdir -p $(OBJDIRNAME)/$(SRCDIRNAME)
|
||||||
@printf '$(GREY) Creating $(END)$(GREEN)$(OBJDIRNAME)$(END)\n'
|
|
||||||
@printf '$(GREY) Be Carefull ur in $(END)$(GREEN)Debug Mode$(END)\n'
|
@printf '$(GREY) Be Carefull ur in $(END)$(GREEN)Debug Mode$(END)\n'
|
||||||
@cc $(CFLAGS) -D BONUS=1 -o $(NAME) $(OBJ) $(LIB_OBJ)
|
@cc $(CFLAGS) -D BONUS=1 -o $(NAME) $(OBJ) $(LIB_OBJ)
|
||||||
|
|
||||||
|
|
@ -122,7 +124,6 @@ re: header fclean all
|
||||||
# Dependences for all
|
# Dependences for all
|
||||||
$(NAME): $(OBJ)
|
$(NAME): $(OBJ)
|
||||||
@mkdir -p $(OBJDIRNAME)
|
@mkdir -p $(OBJDIRNAME)
|
||||||
@printf '$(GREY) Creating $(END)$(GREEN)$(OBJDIRNAME)$(END)\n'
|
|
||||||
@ar rc $(NAME) $(OBJ)
|
@ar rc $(NAME) $(OBJ)
|
||||||
@ranlib $(NAME)
|
@ranlib $(NAME)
|
||||||
|
|
||||||
|
|
|
||||||
31
includes/libft/char.h
Normal file
31
includes/libft/char.h
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* char.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 14:54:04 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:22:26 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef CHAR_H
|
||||||
|
# define CHAR_H
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
int ft_isalnum(int c);
|
||||||
|
int ft_isalpha(int c);
|
||||||
|
int ft_isascii(int c);
|
||||||
|
int ft_isdigit(int c);
|
||||||
|
int ft_isprint(int c);
|
||||||
|
int ft_tolower(int c);
|
||||||
|
int ft_toupper(int c);
|
||||||
|
|
||||||
|
#endif
|
||||||
27
includes/libft/convert.h
Normal file
27
includes/libft/convert.h
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* convert.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 14:57:24 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:27:40 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef CONVERT_H
|
||||||
|
# define CONVERT_H
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
char *ft_itoa(int n);
|
||||||
|
int ft_atoi(const char *nptr);
|
||||||
|
long long int ft_atoll(const char *nptr);
|
||||||
|
|
||||||
|
#endif
|
||||||
23
includes/libft/libft.h
Normal file
23
includes/libft/libft.h
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* libft.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <marvin@42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2023/11/06 11:14:57 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:27:14 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef LIBFT_H
|
||||||
|
# define LIBFT_H
|
||||||
|
|
||||||
|
# include "char.h"
|
||||||
|
# include "convert.h"
|
||||||
|
# include "list.h"
|
||||||
|
# include "memory.h"
|
||||||
|
# include "print.h"
|
||||||
|
# include "str.h"
|
||||||
|
|
||||||
|
#endif
|
||||||
39
includes/libft/list.h
Normal file
39
includes/libft/list.h
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* list.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 15:00:12 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:27:20 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef LIST_H
|
||||||
|
# define LIST_H
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
typedef struct s_list
|
||||||
|
{
|
||||||
|
void *content;
|
||||||
|
struct s_list *next;
|
||||||
|
} t_list;
|
||||||
|
|
||||||
|
int ft_lstsize(t_list *lst);
|
||||||
|
t_list *ft_lstlast(t_list *lst);
|
||||||
|
t_list *ft_lstmap(t_list *lst, void *(*f)(void *), void (*del)(void *));
|
||||||
|
t_list *ft_lstnew(void *content);
|
||||||
|
void ft_lstadd_back(t_list **lst, t_list *new);
|
||||||
|
void ft_lstadd_front(t_list **lst, t_list *new);
|
||||||
|
void ft_lstclear(t_list **lst, void (*del)(void *));
|
||||||
|
void ft_lstdelone(t_list *lst, void (*del)(void *));
|
||||||
|
void ft_lstiter(t_list *lst, void (*f)(void *));
|
||||||
|
|
||||||
|
#endif
|
||||||
31
includes/libft/memory.h
Normal file
31
includes/libft/memory.h
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* memory.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 15:18:17 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:21:00 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef MEMORY_H
|
||||||
|
# define MEMORY_H
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
int ft_memcmp(const void *s1, const void *s2, size_t n);
|
||||||
|
void *ft_calloc(size_t nmemb, size_t size);
|
||||||
|
void *ft_memchr(const void *s, int c, size_t n);
|
||||||
|
void *ft_memcpy(void *dest, const void *src, size_t n);
|
||||||
|
void *ft_memmove(void *dest, const void *src, size_t n);
|
||||||
|
void *ft_memset(void *s, int c, size_t n);
|
||||||
|
void ft_bzero(void *s, size_t n);
|
||||||
|
|
||||||
|
#endif
|
||||||
31
includes/libft/print.h
Normal file
31
includes/libft/print.h
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* print.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 15:07:30 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 15:41:54 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef PRINT_H
|
||||||
|
# define PRINT_H
|
||||||
|
|
||||||
|
# include <fcntl.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <stdarg.h>
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
|
||||||
|
int ft_dprintf(int fd, const char *s, ...);
|
||||||
|
int ft_printf(const char *s, ...);
|
||||||
|
void ft_putchar_fd(char c, int fd);
|
||||||
|
void ft_putendl_fd(char *s, int fd);
|
||||||
|
void ft_putnbr_fd(int n, int fd);
|
||||||
|
void ft_putstr_fd(char *s, int fd);
|
||||||
|
|
||||||
|
#endif
|
||||||
40
includes/libft/str.h
Normal file
40
includes/libft/str.h
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* str.h :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2024/10/31 15:04:59 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 17:06:53 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#ifndef STR_H
|
||||||
|
# define STR_H
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <string.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <unistd.h>
|
||||||
|
# include <limits.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
char **ft_split(char const *s, char c);
|
||||||
|
char *ft_strchr(const char *s, int c);
|
||||||
|
char *ft_strcpy(char *dst, const char *src);
|
||||||
|
char *ft_strdup(const char *s);
|
||||||
|
char *ft_strjoin(char const *s1, char const *s2);
|
||||||
|
char *ft_strmapi(char const *s, char (*f)(unsigned int, char));
|
||||||
|
char *ft_strnstr(const char *big, const char *little, size_t len);
|
||||||
|
char *ft_strrchr(const char *s, int c);
|
||||||
|
char *ft_strtrim(char const *s1, char const *set);
|
||||||
|
char *ft_substr(char const *s, unsigned int start, size_t len);
|
||||||
|
int ft_strcmp(const char *s1, const char *s2);
|
||||||
|
int ft_strncmp(const char *s1, const char *s2, size_t n);
|
||||||
|
size_t ft_strlcat(char *dst, const char *src, size_t size);
|
||||||
|
size_t ft_strlcpy(char *dst, const char *src, size_t size);
|
||||||
|
size_t ft_strlen(const char *s);
|
||||||
|
void ft_striteri(char *s, void (*f)(unsigned int, char*));
|
||||||
|
|
||||||
|
#endif
|
||||||
31
str/ft_strcmp.c
Normal file
31
str/ft_strcmp.c
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* strcmp.c :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: rparodi <marvin@42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2023/11/07 16:56:56 by rparodi #+# #+# */
|
||||||
|
/* Updated: 2024/10/31 17:05:03 by rparodi ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#include "libft.h"
|
||||||
|
|
||||||
|
int ft_strcmp(const char *s1, const char *s2)
|
||||||
|
{
|
||||||
|
size_t i;
|
||||||
|
int diff;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
while ((s1[i] || s2[i]))
|
||||||
|
{
|
||||||
|
if (s1[i] != s2[i])
|
||||||
|
{
|
||||||
|
diff = (unsigned char)s1[i] - (unsigned char)s2[i];
|
||||||
|
return (diff);
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue