您的位置:首页 > 其它

实现strstr()函数

2012-02-09 19:31 429 查看
一)strstr()函数

函数名: strstr

功 能: 在串中查找指定字符串的第一次出现

用 法: char *strstr(char *str1, char *str2);

程序例:

#include <stdio.h>
#include <string.h>
int main(void)
{
char *str1 = "Borland International. Welcome to Wuhan.", *str2 = "nation", *ptr;
ptr = strstr(str1, str2);
printf("The substring is: %s\n", ptr);
return 0;
}
实现函数的源代码:

1.Copyright 1990 Software Development Systems, Inc.

char *strstr( const char *s1, const char *s2 )
{
int len2;

if ( !(len2 = strlen(s2)) )
return (char *)s1;

for ( ; *s1; ++ s1 )
{
if ( *s1 == *s2 && strncmp( s1, s2, len2 ) == 0 )
return (char *)s1;
  }
return NULL;
}

2.Copyright 1986 - 1999 IAR Systems. All rights reserved

char *strstr(const char *s1, const char *s2)
{
int n;
if (*s2)
{
while (*s1)
{
for (n = 0; *(s1 + n) == *(s2 + n); n ++)
{
if (!*(s2 + n + 1))
return (char *)s1;
}
s1++;
}
return NULL;
}
else
return (char *)s1;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  null