Newer
Older
UbixOS / Dump / hybos / lib / string / strstr.c
@cwolsen cwolsen on 31 Oct 2018 1 KB Big Dump
/***
*strstr.c - search for one string inside another
*
*       Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
*
*Purpose:
*       defines strstr() - search for one string inside another
*
*******************************************************************************/

/***
*char *strstr(string1, string2) - search for string2 in string1
*
*Purpose:
*       finds the first occurrence of string2 in string1
*
*Entry:
*       char *string1 - string to search in
*       char *string2 - string to search for
*
*Exit:
*       returns a pointer to the first occurrence of string2 in
*       string1, or NULL if string2 does not occur in string1
*
*Uses:
*
*Exceptions:
*
*******************************************************************************/

char *strstr(const char * str1, const char * str2)
{
	char *cp = (char *)str1;
	char *s1, *s2;

	if(!*str2 )
		return (char *)str1;

	while(*cp)
	{
		s1 = cp;
		s2 = (char *)str2;

		while(*s1 && *s2 && !(*s1-*s2))
			s1++, s2++;

		if(!*s2)
			return cp;

		cp++;
	}

	return 0;
}