字符串替换函数定义方式比较
程序代码:方式一:
// 把字符串str中的子字符串substr1用子字符串substr2替换
char* SwapSubstr(char *dest, char *source, char*substr1, char*substr2)
{
char *pstr = source;
char *pstr1 = dest;
unsigned int i;
for (i=0;i<strlen(source)-strlen(substr1)+1;i++)
{
if (0==strncmp(pstr,substr1,strlen(substr1)))
{
strcat(pstr1,substr2);
pstr += strlen(substr1);
pstr1 += strlen(substr2);
}
else
*pstr1++ = *pstr++;
}
*pstr1 = 0;
return dest;
}上述函数要求替换产生的目的存储器事先传入
程序代码:// 方式二:
char* SwapSubstr(char *source, char*substr1, char*substr2)
{
static char dest[1024];
char *pstr = source;
char *pstr1 = dest;
unsigned int i;
for (i=0;i<strlen(source)-strlen(substr1)+1;i++)
{
if (0==strncmp(pstr,substr1,strlen(substr1)))
{
strcat(pstr1,substr2);
pstr += strlen(substr1);
pstr1 += strlen(substr2);
}
else
*pstr1++ = *pstr++;
}
*pstr1 = 0;
return dest;
}方式二则使用静态存储器的方式,不用预先制定目标存储器,但是这种方式的不利之处在于不可多线程并行处理









慢慢学多了就好了。