aboutsummaryrefslogtreecommitdiff
path: root/ft_strnstr.c
blob: 2308a5774ae8bb76b489e0e65fe3959755d1c205 (plain)
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
#include <stdlib.h>
#include <string.h>
#include "libft.h"

char   *ft_strnstr(const char *big, const char *little, size_t len)
{
	size_t  i;
    size_t  j;
    size_t  min_len;

    min_len = len > ft_strlen(little) ? ft_strlen(little) : len;
	if (min_len == 0)
		return ((char*)big);
    i = 0;
	while (big[i])
	{
		j = 0;
		while (little[j] && big[i + j])
		{
			if (little[j] != big[i + j])
                break ;
			j++;
            if (j == min_len)
                return ((char*)(big + i));
		}
		i++;
	}
	return (NULL);
}