删除子串

来源:互联网 发布:603258电魂网络 编辑:程序博客网 时间:2024/06/09 19:22

#include <iostream>
using namespace std;
void delsubstr(char *strOri,char *strSub,char *strDest);
int main()
{
 char str[]="askaaaaskask";
 char mdl[4]="ask";
 char rslt[20]="";

 delsubstr(str,mdl,rslt);
 cout<<rslt<<endl;
 return 0;
}

void delsubstr(char *strOri,char *strSub,char *strDest)
{
 char *pOri=strOri;
 char *pSub=strSub;
 char *pDst=strDest;
 char *mark;

 while(*pOri)
 {
  if(*pOri!=*pSub)
  {
   *pDst++=*pOri++;
  }
  else
  {
   mark=pOri;
   while(*pOri==*pSub && *pOri)
   {
    pOri++;
    pSub++;
   }
   if(*pSub)
   {
    pOri=mark;
    *pDst++=*pOri++;
   }

   pSub=strSub;

  }
 }
 *pDst='/0';
}

原创粉丝点击