如何实现字符串的反转及替换
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;}