C语言中字符串操作之strstr() c语言字符串操作函数

包含文件:string.h  函数名:strstr  函数原型:externchar *strstr(char *str1, char *str2);  功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。  返回值:返回该位置的指针,如找不到,返回空指针。
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 rightsreservedchar *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;}elsereturn (char *)s1;}

举例

//strstr.c#include <syslib.h>#include <string.h>main(){
  char*s="Golden Global View";
C语言中字符串操作之strstr() c语言字符串操作函数
  char*l="lob";
  char*p;
  clrscr();
  p=strstr(s,l);
  if(p)
  printf("%s",p);
  else
  printf("NotFound!");
  getchar();
  return0;
}  语法:*strstr(str1,str2)
  str1:被查找目标 string expression to search.
  str2:要查找对象 Thestring expression to find.
  该函数返回str2第一次在str1中的位置,如果没有找到,返回NULL
  Thestrstr() function returns the ordinal position within str1 of thefirst occurrence of str2. If str2 is not found in str1, strstr()returns 0.
  例子:
  功能:从字串”string1 onexxx string2 oneyyy”中寻找”yyy”
  (假设xxx和yyy都是一个未知的字串)
  char*s=” string1 onexxx string2 oneyyy”;
  char*p;
  p=strstr(s,”string2”);
  if(p==NULL)printf(“Not Found!”);
  p=strstr(p,”one”);
  if(p==NULL)printf(“Not Found!”);
  p+=strlen(“one”);
  printf(“%s”,p);
  说明:如果直接写语句p=strstr(s,”one”),则找到的是onexxxstring2 oneyyy,不符合要求
  所以需采用二次查找法找到目标

实现

  char*mystrstr(char *s1 , char *s2)
  {
if(*s1==0){if(*s2)return(char*)NULL;
return (char*)s1;
}while(*s1)
{
int i=0;
while(1)
{
if(s2[i]==0) return s1;
if(s2[i]!=s1[i]) break;
i++;
}
s1++;
  }
  return (char*)NULL;
  }

  

爱华网本文地址 » http://www.aihuau.com/a/25101018/373599.html

更多阅读

后宫戏中的巅峰之作《后宫·甄嬛传》 后宫甄嬛传小游戏

后宫戏中的巅峰之作《后宫·甄嬛传》文/凌云子利用“五一”假期,我终于一口气看完了电视剧《后宫·甄嬛传》。这是由流潋紫原创的网络小说《后宫·甄嬛传》改编而成的,由著名导演郑晓龙执导。前段时间后宫戏火爆银屏,像《宫心计》

Excel中求和操作 excel表格求和操作

Excel中求和操作——简介Excel中如何进行求和,操作非常的简单,跟着小编一步步操作吧。Excel中求和操作——工具/原料电脑Excel2010Excel中求和操作——方法/步骤Excel中求和操作 1、

察哈尔声音 王冲:中日钓鱼岛之争不妨再等70年

原题为:王冲:中日钓鱼岛之争不妨再等70年原载于:微信平台worldcomment3月31日,察哈尔学会、斯德哥尔摩国际和平研究所和爱海洋网共同主办了中日东海危机管控的研讨会。我简短做了一个相对乐观的判断,以及希望大家不要妄言战争,希望媒体不

声明:《C语言中字符串操作之strstr() c语言字符串操作函数》为网友何以清尘分享!如侵犯到您的合法权益请联系我们删除