c语言替换字符串中的子串
#include
#include
int checkStr(char *s1, char *s2) //匹配字符串相不相等
{
for (int i = 0; i < strlen(s2); i++)
{
if (s1[i] != s2[i]) return 0;
}
return 1;
}
void reStr(char *s1, char *s2, char *s3)//替换字符串
{
int s1len = strlen(s1),
s2len = strlen(s2),
s3len = strlen(s3);
int n1 = s1len - s2len;
int n2 = s2len - s3len;
if (n2 > 0)
{
//后面的字符串全部向前移n2个位置
for (int i = s2len; i < s1len; i++)
{
s1[i - n2] = s1[i];
}
s1[s1len - n2] = '\0';
}
else if (n2 < 0)//后面的字符串全部向后移n2个位置
{
for (int i = s1len; i >= s2len; i--)
{
s1[i - n2] = s1[i];
}