OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [libiberty/] [strstr.c] - Blame information for rev 164

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 21 khays
/* Simple implementation of strstr for systems without it.
2
   This function is in the public domain.  */
3
 
4
/*
5
 
6
@deftypefn Supplemental char* strstr (const char *@var{string}, const char *@var{sub})
7
 
8
This function searches for the substring @var{sub} in the string
9
@var{string}, not including the terminating null characters.  A pointer
10
to the first occurrence of @var{sub} is returned, or @code{NULL} if the
11
substring is absent.  If @var{sub} points to a string with zero
12
length, the function returns @var{string}.
13
 
14
@end deftypefn
15
 
16
 
17
*/
18
 
19
 
20
/* FIXME:  The above description is ANSI compiliant.  This routine has not
21
   been validated to comply with it.  -fnf */
22
 
23
#include <stddef.h>
24
 
25
extern char *strchr (const char *, int);
26
extern int strncmp (const void *, const void *, size_t);
27
extern size_t strlen (const char *);
28
 
29
char *
30
strstr (const char *s1, const char *s2)
31
{
32
  const char *p = s1;
33
  const size_t len = strlen (s2);
34
 
35
  for (; (p = strchr (p, *s2)) != 0; p++)
36
    {
37
      if (strncmp (p, s2, len) == 0)
38
        return (char *)p;
39
    }
40
  return (0);
41
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.