#include "stdafx.h"
#include <stdlib.h>
#include <stdio.h>
#include <assert.h>
#include "iostream"
using namespace std;
#define TRUE 1
#define FALSE 0
int strlen1(char *string)
{
int length=0;
while(*string++!='\0')
length+=1;
return length;
}
int strlen2(char const*string)
{
int length=0;
while(*string++!='\0')
length+=1;
return length;
}
int del_substr(char *str,char const*substr)
{
int j,k;
int t=0;
int str_len=strlen1(str);
int sub_len=strlen2(substr);
assert(str_len>=sub_len);
for(int i=0;i<(str_len-sub_len);i++)
{
k=i;
printf("%c",*(str+i-1)); //打印相同字符串前的一段字符
for ( j=0;j<sub_len;j++)
{
if(*(str+k++)!=*(substr+j))
break; //跳出循环,i++
}
if(j==sub_len)
{
//for(int t=0;t<(str_len-sub_len-i);t++)
while(t<str_len-sub_len-i)
printf("%c",*(str+i+sub_len+t++));
cout<<endl;
return TRUE;
}
}
return FALSE;
}
int _tmain(int argc, _TCHAR* argv[])
{
char *str = "ABCDEFCDEG";
const char *substr = "CDE";
cout<<"删除子字符串后:"<<endl;
int i=del_substr(str,substr);
cout<<i<<endl;
system("pause");
return 0;
}
字符串系列2
最新推荐文章于 2023-02-09 23:56:47 发布