C/strstr
Wygląd
< C
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]Opis
[edytuj]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]- ↑ Pochodzi od angielskiego idiomu": Needle in a Haystack czyli igła w stogu siana