/* ************************************************************************** */ /* LE - / */ /* / */ /* ft_strnstr.c .:: .:/ . .:: */ /* +:+:+ +: +: +:+:+ */ /* By: rbousset +:+ +: +: +:+ */ /* #+# #+ #+ #+# */ /* Created: 2019/10/10 00:23:15 by rbousset #+# ## ## #+# */ /* Updated: 2019/10/13 08:34:35 by rbousset ### #+. /#+ ###.fr */ /* / */ /* / */ /* ************************************************************************** */ #include #include #include char *ft_strnstr(const char *haystack, const char *needle, size_t len) { unsigned long i; unsigned long j; char *hay_ptr; char *nee_ptr; hay_ptr = (char*)haystack; nee_ptr = (char*)needle; i = 0; if (!nee_ptr[0]) return (hay_ptr); while (hay_ptr[i] && i < len) { j = 0; while (nee_ptr[j] == hay_ptr[i + j] && (i + j) < len) { if (!nee_ptr[j + 1]) return (hay_ptr + i); j++; } if (!hay_ptr[i + 1] && !j) return (0); i++; } return (0); }