1. 程式人生 > >字串2在字串1中第一次出現的位置strstr()

字串2在字串1中第一次出現的位置strstr()

//字串2在字串1中第一次出現的位置,採用遍歷的思想,移動str1的位置與str2進行匹配

char *strstr(const char *str1, const char *str2)
{
    int i = 0;

	if (NULL == str1)
	{
	    return NULL;
	}

	if (NULL == str2)
	{
	    return (char *)str1;
	}

	if (*str2 != '\0')
	{
		while (*str1 != '\0')
		{
		    for (i=0; *(str1+i) == *(str2+i); i++)
		    {
			if (! *(str2+i+1))
			{
	                    return ((char *)str1);
			}
		    }
		    str1++;
		}

		return NULL;
	}
	else
	{
	    return (char *)str1;
	}
}