如:
父串:“hellosdhellodsfhellohello”
子串:“hello”
要求删除父串中的hello。
#include <stdio.h>
#include <string.h>
#define MAX_SIZE 1024
int my_strncmp(char *s1, char *s2, int len)
{
int i;
for(i = 0; i < len; i++)
{
if(*(s1 + i) != *(s2 + i))
{
return -1;
}
}
return 0;
}
char *delete_aim_str(char *src, char *delete)
{
int i;
int d_len = strlen(delete);
int s_len = strlen(src);
char *dest = src;
while(*src != '\0')
{
if(my_strncmp(src,delete,d_len) == 0)
{
for(i = 0; i < s_len - d_len; i++)
{
*(src+i) = *(src + d_len+i);
}
}
src++;
}
return dest;
}
int main()
{
char src[MAX_SIZE];
char delete[MAX_SIZE];
printf("Please input string src:\n");
scanf("%s",src);
printf("Please input string to be deleted:\n");
scanf("%s",delete);
char *result = delete_aim_str(src,delete);
printf("The result is:\n%s\n",result);
return 0;
}