主函数
#include <stdio.h>
#include <string.h>
#define MAX_SIZE 1024
int main()
{
char src[MAX_SIZE];
char sub[MAX_SIZE];
printf("Please input src:\n");
scanf("%s",src);
printf("Please input sub:\n");
scanf("%s",sub);
delete_sub_str(src,sub);
printf("result = %s\n",src);
return 0;
}
delete_sub.c
#include <string.h>
void delete_sub_str(char *src, char *sub)
{
int sub_len = strlen(sub);
while(*src != '\0')
{
if(my_strncmp(src,sub,sub_len) == 0)
{
delete_ch(src,sub_len);
}
else
{
src++;
}
}
}
delete_ch.c
#include <string.h>
void delete_ch(char *src, int sub_len)
{
int i;
int j;
int len = strlen(src);
for(j = 0; j < sub_len; j++)
{
for(i = 0; i < len; i++)
{
*(src + i) = *(src + i + 1);
}
len--;
*(src + i) = '\0';
}
}
my_strncmp.c
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;
}