标签:char void item 空格替换 位置 while ldl 一个 计算
class Solution { public: void replaceSpace(char *str,int length) { // char * p =str; int i,j; for(i=0;i<length;i++) { if(str[i]==‘ ‘) { for(j=length-1;j>i;j--) str[j+2]=str[j]; str[i]=‘%‘; str[i+1]=‘2‘; str[i+2]=‘0‘; } } } };
class Solution { public: void replaceSpace(char *str,int length) { if(str == NULL||length <0) return; int oldlength = 0; int newlength = 0; int space_num = 0; for(int i = 0;str[i]!=‘\0‘;++i) { ++oldlength; if(str[i]==‘ ‘) { ++space_num; } } newlength = oldlength + space_num*2; if(newlength>length) return; while(oldlength>=0) { if(str[oldlength]!=‘ ‘) { str[newlength--] = str[oldlength]; } else { str[newlength--]=‘0‘; str[newlength--]=‘2‘; str[newlength--]=‘%‘; } --oldlength; } return; } };
标签:char void item 空格替换 位置 while ldl 一个 计算
原文地址:https://www.cnblogs.com/dreamstick/p/9496449.html