Deklaracja

edytuj
char* strstr (const char* str1, const char* str2);


kod źródłowy

edytuj
// https://github.com/torvalds/linux/blob/master/lib/string.c


/**
 * strstr - Find the first substring in a %NUL terminated string
 * @s1: The string to be searched
 * @s2: The string to search for
 */
char *strstr(const char *s1, const char *s2)
{
	size_t l1, l2;

	l2 = strlen(s2);
	if (!l2)
		return (char *)s1;
	l1 = strlen(s1);
	while (l1 >= l2) {
		l1--;
		if (!memcmp(s1, s2, l2))
			return (char *)s1;
		s1++;
	}
	return NULL;
}

Plik nagłówkowy

edytuj

string.h

Szuka pierwszego wystąpienia łańcucha znakowego str2 w łańcuchu str1.

Argumenty

edytuj
  • str1 - przeszukiwany łańcuch ( ang string Haystack[1])
  • str2 - poszukiwany łańcuch ( ang. substring lub Needle)

Wartość zwracana

edytuj
  • wskaźnik do pierwszego znaku łańcucha str1, będący pierwszym znakiem dopasowania łańcucha str2 , jeżeli dopasowanie to nastąpiło
  • wskaźnik zerowy jeśli łańcuch str2 nie zawiera się w łańcuchu str1
  • str1 jeśli str2 ma zerową długośc


Zobacz też

edytuj

Źródła

edytuj
  1. Pochodzi od angielskiego idiomu": Needle in a Haystack czyli igła w stogu siana