diff options
Diffstat (limited to 'libft.h')
| -rw-r--r-- | libft.h | 86 |
1 files changed, 52 insertions, 34 deletions
@@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/10/07 09:45:02 by cacharle #+# #+# */ -/* Updated: 2019/11/16 08:12:45 by cacharle ### ########.fr */ +/* Updated: 2019/11/20 04:13:10 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,25 +14,19 @@ # define LIBFT_H # include <unistd.h> -# include <string.h> +# include <stdlib.h> +# include <stddef.h> # include <limits.h> # include "get_next_line.h" -# ifdef LINUX -# include <stdio.h> -# define OPEN_MAX FOPEN_MAX -# endif - # define TRUE 1 # define FALSE 0 typedef unsigned char t_byte; -typedef struct s_list -{ - void *content; - struct s_list *next; -} t_list; +/* +** memory +*/ void *ft_memset(void *s, int c, size_t n); void ft_bzero(void *s, size_t n); @@ -41,6 +35,14 @@ void *ft_memccpy(void *dest, const void *src, int c, size_t n); void *ft_memmove(void *dst, const void *src, size_t len); void *ft_memchr(const void *s, int c, size_t n); int ft_memcmp(const void *s1, const void *s2, size_t n); + +void *ft_memalloc(size_t size); +void ft_memdel(void **ap); + +/* +** string +*/ + size_t ft_strlen(const char *s); char *ft_strdup(const char *s); char *ft_strcpy(char *dest, const char *src); @@ -56,22 +58,13 @@ char *ft_strnstr(const char *haystack, const char *needle, size_t len); int ft_strcmp(const char *s1, const char *s2); int ft_strncmp(const char *s1, const char *s2, size_t n); +void ft_striter(char *s, void (*f)(char *)); +void ft_striteri(char *s, void (*f)(unsigned int, char *)); int ft_atoi(const char *nptr); -int ft_isalpha(int c); -int ft_isdigit(int c); -int ft_isalnum(int c); -int ft_isascii(int c); -int ft_isprint(int c); -int ft_toupper(int c); -int ft_tolower(int c); -void *ft_calloc(size_t count, size_t size); -void *ft_memalloc(size_t size); -void ft_memdel(void **ap); + char *ft_strnew(size_t size); void ft_strdel(char **as); void ft_strclr(char *s); -void ft_striter(char *s, void (*f)(char *)); -void ft_striteri(char *s, void (*f)(unsigned int, char *)); char *ft_strmap(char const *s, char (*f)(char)); char *ft_strmapi(char *s, char (*f)(unsigned int, char)); int ft_strequ(char const *s1, char const *s2); @@ -80,7 +73,35 @@ char *ft_substr(char const *s, unsigned int start, size_t len); char *ft_strjoin(char const *s1, char const *s2); char *ft_strtrim(char const *s1, char const *set); char **ft_split(char const *s, char c); + +char *ft_strjoin_free(char const *s1, char const *s2, + int free_nb); +char *ft_strjoin_free_snd(char const *s1, char const *s2); +int ft_strcount(char *str, char c); + +/* +** character +*/ + +int ft_isalpha(int c); +int ft_isdigit(int c); +int ft_isalnum(int c); +int ft_isascii(int c); +int ft_isprint(int c); +int ft_toupper(int c); +int ft_tolower(int c); + +/* +** allocation +*/ + +void *ft_calloc(size_t count, size_t size); char *ft_itoa(int n); + +/* +** fildes +*/ + void ft_putendl(char *s); void ft_putchar(char c); void ft_putstr(char const *s); @@ -92,9 +113,15 @@ void ft_putnbr_fd(int n, int fd); char *ft_strndup(const char *s1, size_t n); /* -** bonus +** list */ +typedef struct s_list +{ + void *content; + struct s_list *next; +} t_list; + t_list *ft_lstnew(void const *content); void ft_lstadd_front(t_list **alst, t_list *new); int ft_lstsize(t_list *lst); @@ -107,13 +134,4 @@ t_list *ft_lstmap(t_list *lst, void *(*f)(void *), void (*del)(void *)); void ft_lstpop_front(t_list **lst, void (*del)(void *)); -/* -** added -*/ - -char *ft_strjoin_free(char const *s1, char const *s2, - int free_nb); -char *ft_strjoin_free_snd(char const *s1, char const *s2); -int ft_strcount(char *str, char c); - #endif |
