题目描述:请实现一个函数,将一个字符串中的空格替换成“%20”。
例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy
- 从前往后找空格,从后往前替换
void replaceSpace(char *str, int length) {
if (str == NULL || length < 0)
return;
int blacknum = 0;
int finallen;
for (int i = 0; i < length; i++)
{
if (str[i] == ' ')
blacknum++;
}
cout << "空格的数量为:" << blacknum << endl;
finallen = length + blacknum * 2;
cout << finallen << endl;
while (finallen >= 0 && length >= 0)
{
if (str[length] == ' ')
{
str[finallen--] = '0';
str[finallen--] = '2';
str[finallen--] = '%';
}
else
{
str[finallen] = str[length];
finallen--;
}
length--;
}
return;
}