Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include <string.h>
2
 
3
/* Return pointer to first occurrence of s2 in s1, NULL if none */
4
 
5
char *
6
strstr(const char *s1, const char *s2)
7
{
8
	char *p, *pa, *pb;
9
	int c0, c;
10
 
11
	c0 = *s2;
12
	if(c0 == 0)
13
		return (char *)s1;
14
	s2++;
15
	for(p=strchr(s1, c0); p; p=strchr(p+1, c0)) {
16
		pa = p;
17
		for(pb=(char *)s2;; pb++) {
18
			c = *pb;
19
			if(c == 0)
20
				return p;
21
			if(c != *++pa)
22
				break;
23
		}
24
	}
25
	return 0;
26
}
27