-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstring_42.h
executable file
·121 lines (100 loc) · 4.87 KB
/
string_42.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* string_42.h :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: akharrou <akharrou@student.42.us.org> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/03/03 21:38:09 by akharrou #+# #+# */
/* Updated: 2019/06/07 19:11:36 by akharrou ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef STRING_42_H
# define STRING_42_H
/*
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **
*/
# include <string.h>
/*
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **
*/
size_t ft_strlen(const char *str);
size_t ft_strnlen(const char *s, size_t maxlen);
int ft_strcmp(const char *str1, const char *str2);
int ft_strncmp(const char *str1, const char *str2, size_t len);
int ft_strequ(char const *s1, char const *s2);
int ft_strnequ(char const *s1, char const *s2, size_t n);
char *ft_strrev(char *str);
char *ft_strcpy(char *dst, const char *src);
char *ft_strncpy(char *dst, const char *src, size_t n);
size_t ft_strlcpy(char *dest, const char *src, size_t size);
char *ft_vstrcpy(char *dest, int strs, ...);
char *ft_vstrncpy(char *dest, int n, int strs, ...);
char *ft_strcpy_until(char *dest, const char *src, char *charset);
char *ft_strcpyfre(char *dst, const char *src, int free_dst,
int free_src);
void ft_astrcpy(char **dst, const char *src);
void ft_astrcpyfre(char **dst, const char *src, int free_src);
void ft_astrncpy(char **dst, const char *src, size_t len);
char *ft_strcat(char *dst, const char *src);
char *ft_strncat(char *dst, const char *src, size_t n);
size_t ft_strlcat(char *dst, const char *src, size_t size);
char *ft_strcatfre(char *s1, const char *s2, int free_s1, int free_s2);
char *ft_strchr(const char *str, int c);
char *ft_strrchr(const char *str, int c);
char *ft_strchrs(const char *str, const char *charset);
char *ft_strstr(const char *str, const char *find);
char *ft_strnstr(const char *str, const char *find, size_t len);
char *ft_strnew(size_t size);
char *ft_strdup(const char *str);
char *ft_strndup(const char *src, size_t n);
char *ft_strndupfre(const char *src, size_t n, int free_src);
char *ft_strdup_range(const char *str, int index, int end);
char *ft_strsub(char const *s, unsigned int start, size_t len);
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 const *s, char (*f)(unsigned int, char));
char **ft_strsplit(char const *s, const char *charset);
void freestrtab(char ***strtab);
char *ft_strtrim(char const *s, unsigned char c);
char *ft_strstrip(char const *s, char *charset);
char *ft_strlstrip(char const *s, char *charset);
char *ft_strnlstrip(char const *s, char *charset, int n);
char *ft_strrstrip(char const *s, char *charset);
char *ft_strnrstrip(char const *s, char *charset, int n);
char *ft_strjoin(char const *s1, char const *s2);
char *ft_strjoinfre(char const *s1, char const *s2, int free_s1,
int free_s2);
char *ft_vstrjoin(char *str, int n, ...);
char *ft_vstrjoinfre(char *str, int free_str, int n, ...);
char *ft_strappend(char const *s1, char const *s2, int free_s1,
int free_s2);
char *ft_strprepend(char const *s1, char const *s2, int free_s1,
int free_s2);
char *ft_strnjoin(char const *s1, char const *s2, size_t len);
char *ft_strnjoinfre(char const *s1, char const *s2, size_t len,
int free_str);
char *ft_strnappend(char const *s1, char const *s2, size_t len,
int free_str);
char *ft_strnprepend(char const *s1, char const *s2, size_t len,
int free_str);
char *ft_strhex(const char *str, size_t size);
char *ft_strhexfre(const char *str, size_t size);
char **ft_strtab(int size, ...);
char **ft_strtabnew(int size);
size_t ft_strtablen(const char **strtab);
size_t ft_strtabnlen(const char **strtab, long n);
char **ft_strtabdup(const char **strtab);
char **ft_strtabndup(const char **strtab, long n);
char **ft_strtabcat(char **dst, char **src);
char **ft_strtabncat(char **dst, char **src, long n);
char **ft_strtab_appendstr(const char **strtab, char *str);
char **ft_strtab_appendstrfre(const char **strtab, char *str,
int free_s1, int free_s2);
/*
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **
*/
#endif