// 字符串替换空格 为 %20------替换之后一个空格 变成’%’ ‘2’ ‘0’
/* length 为字符数组 string 的总容量*/
void ReplaceBlank(char string[],int length)
{
if(string == NULL && length <= 0)
return;
/* oriLength 原始字符串长度 */
int oriLength = 0;
int numsofblank = 0;
int i = 0;
while(string[i] != '\0'){
++ oriLength;
if(string[i] == ' '){
++ numsofblank;
}
++ i;
}
/* newlength 替换之后长度 */
int newlength = oriLength + numsofblank * 2;
if(newlength > length)
return ;
int indexOfOriginal = oriLength;
int indexOfNew = newlength;
while(indexOfOriginal >=0 && indexOfNew > indexOfOriginal){
if(string[indexOfOriginal] == ' '){
string[indexOfNew--] = '0';
string[indexOfNew--] = '2';
string[indexOfNew--] = '%';
}else{
string[indexOfNew--] = string[indexOfOriginal];
}
--indexOfOriginal;
}
}