diff options
Diffstat (limited to 'libft/ft_memchr.c')
-rw-r--r-- | libft/ft_memchr.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libft/ft_memchr.c b/libft/ft_memchr.c new file mode 100644 index 0000000..c2578aa --- /dev/null +++ b/libft/ft_memchr.c @@ -0,0 +1,33 @@ +/* ************************************************************************** */ +/* LE - / */ +/* / */ +/* ft_memchr.c .:: .:/ . .:: */ +/* +:+:+ +: +: +:+:+ */ +/* By: rbousset <marvin@le-101.fr> +:+ +: +: +:+ */ +/* #+# #+ #+ #+# */ +/* Created: 2019/10/08 19:14:54 by rbousset #+# ## ## #+# */ +/* Updated: 2019/10/13 08:40:23 by rbousset ### #+. /#+ ###.fr */ +/* / */ +/* / */ +/* ************************************************************************** */ + +#include <stddef.h> + +void + *ft_memchr(const void *s, int c, size_t n) +{ + unsigned char *s_ptr; + size_t i; + + if (!s) + return (NULL); + i = 0; + s_ptr = (unsigned char*)s; + while (i < n) + { + if (s_ptr[i] == (unsigned char)c) + return ((char*)&s[i]); + i++; + } + return (NULL); +} |