如何实现字符串的反转及替换

时间:2026-02-16 16:26:52

1、实现字符串反转函数

/字符串反转

char *strReverse(char *str){

// 判断字符是否为null或是空字符串

if (NULL == str  || '\0'==str ) {

return str;

}

// 定义char数组指针

char *start = str;

char *end = str;

while (*end != '\0'){//指向最后一个结点

end++;

}

// 交换头和尾的值

char temp;

--end;// 去除\0的位置

while (start < end){

temp = *start;

*start = *end;

*end = temp;

start++;

end--;

}

return str;

}

2、替换字符串

/* 功能:将str字符串中的oldstr字符串替换为newstr字符串

* 参数:str:操作目标 oldstr:被替换者 newstr:替换者

* 返回值:返回替换之后的字符串

* */

char *strrpc(char *str,char *oldstr,char *newstr){

char bstr[strlen(str)];//转换缓冲区

memset(bstr,0,sizeof(bstr));//初始化为空

for(int i = 0;i < strlen(str);i++){

if(!strncmp(str+i,oldstr,strlen(oldstr))){//在当前位置取和oldstr等长字符

strcat(bstr,newstr);

i += strlen(oldstr);

}

strncat(bstr,str + i,1);//保存一字节进缓冲区

}

strcpy(str,bstr);

return str;

}

© 2026 一点资料
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com