文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>char *strstr(char *, char *)的几个实现方法

char *strstr(char *, char *)的几个实现方法

时间:2010-05-20  来源:cr858923

char *strstr(char *haystack, char *needle)   
{
    int i, j;     for( i=0; i<strlen(haystack); i++ )         for( j=0; j<strlen(needle); j++ )             if ( haystack[i] != needle[j] )                 break;     if(i>=strlen(haystack))         return NULL;     else         return &haystack[i]; } 功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。 说明:返回指向第一次出现needle位置的指针,如果没找到则返回NULL       char   *str_str(char   *haystack,   char   *needle)  
  {  
  char   *res=NULL;  
  int   len1=strlen(haystack);  
  int   len2=strlen(needle);  
  int   i,j,n;  
   
  if(len2>len1)   return   res;  
  n=len1-len2;  
  for(i=0;i<=n;i++)  
  {  
  for(j=0;j<len2;j++)  
  {  
  if(haystack[i+j]   !=   needle[j])   break;  
  }  
  if(j==len2)  
  {  
  res=haystack+i;  
  break;  
  }  
  }  
  return   res;  
  }
    int i=0, j=0;   
if( strlen(s1) < strlen(s2) )
    return null; while( *(s1+i) && *(s2+j) ) {     if(*(s1+i)==*(s2+j))         {i++;j++;}
    else
        {i=i-j+1;j=0;}
}   
return (j>0)?i-j:null;
      char *mystrstr ( char *haystack, char *needle) {     char *p= haystack;     char *p1, *p2;     if ( !*needle ) return( (char*)haystack );     while ( *p )     {         p1 = p;         p2 = (char*)needle;         while ( *p1 && *p2 && ( *p1++ == *p2++ ) );         if ( !*p2 )               return (p);         p++;     }     return(NULL); }
    char *strstr(char *haystack, char *needle) {     char *pChar;   
    pChar = needle;  
    int len = strlen(needle);
    for(; strchr(haystack,*pChar) != '\0'; haystack++)     
    {
        if ( strncmp(haystack, pChar, len) == 0 )         {             return haystack;         }     }     return NULL; }  
相关阅读 更多 +
排行榜 更多 +
哥布林弹球b服手游下载

哥布林弹球b服手游下载

休闲益智 下载
小马样式盒游戏下载

小马样式盒游戏下载

休闲益智 下载
异变小镇中文版下载安装

异变小镇中文版下载安装

冒险解谜 下载