69,371
社区成员
发帖
与我相关
我的任务
分享
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include <tchar.h>
void DeleteStringOfCount(TCHAR SourceString[],TCHAR DestString[])
{
TCHAR *pStr = NULL;
unsigned int pStrLen = 0;
unsigned int i = 0;
pStr = _tcsstr(SourceString,DestString);
pStrLen = _tcslen(pStr);
for (i = _tcslen(DestString);pStr[i] != '\0';i++)
{
pStr[i-_tcslen(DestString)] = pStr[i];
}
pStr[i-_tcslen(DestString)] = '\0'; //终结符号
if (pStrLen > _tcslen(DestString))
{
DeleteStringOfCount(pStr,DestString);
}
else
{
return;
}
}
int main()
{
TCHAR str1[]=_T("胡闍蘟A胡abcdeA胡12345A胡ABCDE");
TCHAR *str2=_T("A胡");
puts(str1); //输出原串
DeleteStringOfCount(str1, str2);
puts(str1); //输出结果串
system("PAUSE");
return 0;
}
void stringfilter(char*victim,char*keyword)
{
unsigned int kwlen,cslen;char*p;
kwlen=strlen(keyword);
while(p=strstr(victim,keyword))
{
cslen=strlen(victim);
memcpy(p,p+kwlen,cslen-(int)p+(int)victim-kwlen+1);
}
}
#include<iostream>
using namespace std;
void stringfilter(char*victim,char*keyword)
{
unsigned int kwlen,cslen;char*p;
kwlen=strlen(keyword);
while(p=strstr(victim,keyword))
{
cslen=strlen(victim);
memcpy(p,p+kwlen,cslen-kwlen+1);
}
}
int wmain()
{
char a[]="XXXX财政局采购公示:佳能复印机,戴尔电脑,惠普打印机,ipod优盘,西部数据移动硬盘";
stringfilter(a,"ipod");
printf("%s",a);
system("pause");
}